CSU - 1597 薛XX后代的IQ
2017-08-09 14:09
162 查看
我尊敬这题,也鄙视我自己.
这题一开始看到没有思路,因为我每次看到这种大计算,只知道快速幂,当然几乎每次都没用.
然后发现这题x,y,p都是300以内的,也就是说,在10^18次方内,x,y最多也只有90000种组合,这是很少的,所以我们可以直接全部算出来,显然会在某一个地方陷入循环,那么然后就算再多的后代,也可以取模取掉.
这思路是很简单的,但我犯了两个致命失误,这题wa了很久.
1.认为循环会从头开始,这是一个错误的潜意识,认为每组数据的循环都是刚好从头部开始,最可怕的是题目给的四组样例也全都是从头开始的循环.
2.没有画图,很多时候一个加一减一不对,就wa了.
如果你没有理解我的话,把我代码里的注释打开,就行了.
这题一开始看到没有思路,因为我每次看到这种大计算,只知道快速幂,当然几乎每次都没用.
然后发现这题x,y,p都是300以内的,也就是说,在10^18次方内,x,y最多也只有90000种组合,这是很少的,所以我们可以直接全部算出来,显然会在某一个地方陷入循环,那么然后就算再多的后代,也可以取模取掉.
这思路是很简单的,但我犯了两个致命失误,这题wa了很久.
1.认为循环会从头开始,这是一个错误的潜意识,认为每组数据的循环都是刚好从头部开始,最可怕的是题目给的四组样例也全都是从头开始的循环.
2.没有画图,很多时候一个加一减一不对,就wa了.
如果你没有理解我的话,把我代码里的注释打开,就行了.
/* xzppp */ #include <iostream> #include <vector> #include <set> #include <queue> #include <map> #include <algorithm> #include <stdio.h> #include <string.h> #include <list> #include <math.h> #include <iomanip> using namespace std; #define FFF freopen("in.txt","r",stdin);freopen("out.txt","w",stdout); #define lson l,m,rt<<1 #define rson m+1,r,rt<<1|1 #define MP make_pair typedef long long LL; typedef unsigned long long ULL; const int MAXN = 400; const int INF = 0x7fffffff; const int MOD = 1e9+7; LL all[MAXN+17][MAXN+17]; int main() { // FFF int t; cin>>t; while(t--) { LL x,y,a,b,p,n; cin>>x>>y>>a>>b>>p>>n; memset(all, -1, sizeof(all)); vector<pair<pair<LL,LL > ,LL > > ans; ans.clear(); if(x==y&&a==b) { cout<<0<<endl; continue; } while(1) { if(all[x][y]!=-1) break; else { all[x][y] = (x*a+y*b)%p; int temp = all[x][y]; ans.push_back(MP(MP(x,y),temp)); //cout<<x<<" "<<" "<<y<<" "<<temp;//可以用这行注释来进行打表,增强题目理解. x = y; y = temp; } } int plc; for (int i = 0; i <ans.size(); ++i) if(ans[i].second==all[x][y]&&x==ans[i].first.first&&y==ans[i].first.second) { plc = i; break; } if(n>plc) cout<<ans[plc+(n-plc-1)%(ans.size()-plc)].second<<endl; else cout<<ans[n-1].second<<endl; } return 0; }
相关文章推荐
- CSU 1597: 薛XX后代的IQ (矩阵运算)
- csu 1597 薛XX后代的IQ(循环节)
- 快速矩阵幂 csu1597 薛XX后代的IQ
- CSU 1658 IQ of XUEXX’s descendants 矩阵快速幂
- 薛XX后代的IQ CSU1597【循环节】或【快速幂】
- IQ80以下看不懂,IQ150以上看了就会疯的故事
- 1597
- 第7节 三个败家子(7)——收藏IQ也会贬值
- 命运无法改变,可以改变的是我们对命运的态度。 --- 掌握成功指标IQ/EQ/AQ的含义和作用
- hdu 1597(浓缩的情感)
- 后代与房子
- 装载优化软件Cube-IQ使用步骤
- IQ 调制
- csu1022 菜鸟和大牛 dp
- “CSU_BMW正式组建纪念赛”解题报告
- csu 1009 抛硬币
- CSU 1248: 非变性聚丙烯酰胺凝胶电泳
- csu 1248 非变性聚丙烯酰胺凝胶电泳
- 这是我看到过最好的介绍IQ正交调制的文章
- CSU 1089 羊吃草