vijosP1471 教主的游乐场
来源:互联网 发布:淘宝购物车东西没了 编辑:程序博客网 时间:2024/04/28 03:23
vijosP1471 教主的游乐场
链接:https://vijos.org/p/1471
【思路】
递推。
首先找到最左边的可以一步跳到后方的L,
那么L之后的点有两种情况:要么a足以跳到后方步数为1,要么可以一步调到L有L跳到后方步数为2。
对于L之前的点而言,再进行相同的操作,相当于代码中缩小R为L。
【代码】
1 #include<iostream> 2 #include<cstdio> 3 using namespace std; 4 5 const int maxn = 100000+10; 6 7 int n,q; 8 int a[maxn],step[maxn]; 9 10 inline int read_int(){11 char c=getchar();12 while(!isdigit(c)) c=getchar();13 int x=0;14 while(isdigit(c)) {15 x=x*10+c-'0';16 c=getchar();17 }18 return x;19 }20 21 int main() {22 ios::sync_with_stdio(false);23 n=read_int(); q=read_int();24 for(int i=1;i<=n;i++) a[i]=read_int();25 26 int L=1,R=n+1;27 step[R]=0;28 do{29 int i=1;30 while(i+a[i]<R) i++;31 for(int j=i;j<R;j++)32 if(j+a[j]>=R) step[j]=step[R]+1;33 else step[j]=step[R]+2;34 R=i;35 }while(R>1);36 int x;37 for(int i=1;i<=q;i++) {38 x=read_int();39 cout<<step[x];40 if(i<q) cout<<" ";41 else 42 cout<<"\n";43 }44 return 0;45 }
0 0
- vijosP1471 教主的游乐场
- [vijos1471] 教主的游乐场
- Vijos 1471 教主的游乐场
- JZOJ 1407. 教主的游乐场
- vijos 1471 教主的游乐场
- [vijos 1471]教主的游乐场
- vijos p1471 教主的游乐场(贪心)
- 最佳的代码游乐场
- 游乐场
- tensorflow 实现游乐场的网络
- 教主的花园
- 【枚举】教主的花园
- 你们的“教主”是谁?
- 3343: 教主的魔法
- [bzoj3343]教主的魔法
- bzoj3343: 教主的魔法
- 教主的花园
- BZOJ3343: 教主的魔法
- vijosP1038 添加括号
- 限制UITextField手机号只能输入11位
- vijosP1159 岳麓山上打水
- vijosP1037搭建双塔
- vijosP1195“非常男女”计划
- vijosP1471 教主的游乐场
- vijosP1059 积木城堡
- vijosP1071 新年趣事之打牌
- 安装Elasticsearch集群
- vijosP1285 佳佳的魔法药水
- vijosP1014 旅行商简化版
- NOI题库7624 山区建小学(162:Post Office / IOI2000 POST OFFICE [input] )
- 读取xml文件的方式
- NOI题库05 派