摘要: 。。wa了一整天,,,死都找不出bug,后来把x-=l[idx],y-=l[idy]就过了= = 还是分块,用双端队列+数组(map可能会爆内存)维护,每次更新只需要更新两端的队列值和数组里存的值,查询直接暴力查询每个块复杂度O(n*sqrt(n)) #include<bits/stdc++.h> 阅读全文
posted @ 2017-10-12 20:42 walfy 阅读(184) 评论(0) 推荐(0) 编辑
摘要: 和上一题差不多,就只查询了次数,不用输出跳出前的最后一位 #include<bits/stdc++.h> #define fi first #define se second #define mp make_pair #define pb push_back #define pii pair<int 阅读全文
posted @ 2017-10-12 09:14 walfy 阅读(172) 评论(0) 推荐(0) 编辑
摘要: 给一个数组,有两种操作,一种是将a位数改成b,一种是判断从a点跳几次能跳出数组,每次跳从a到x【a】+a 题解:用两个数组记录,每次点跳出下一个块 的次数,和跳到下一个块 的位置,用块来不断更新,查找的时候直接暴力跳每一个块,到最后一个块就挨个跳, #include<bits/stdc++.h> # 阅读全文
posted @ 2017-10-12 09:13 walfy 阅读(221) 评论(0) 推荐(0) 编辑