NYOJ145【聪明的小珂】
2015-04-06 15:36
169 查看
聪明的小珂
时间限制:1000 ms | 内存限制:1000 KB难度:3
描述
小珂是一个爱美的女孩,她有n条新项链,标号从1到n,每一条项链在颜色上都会有一些差别,n条项链依次摆放,围成一个圈。小珂每次都会从上一次选择项链的位置开始数到第k条项链,把这条项链作为今天要带的项链,每次数的方向都是一致的,现在希望你帮小珂计算出一个最大的k,满足k<=n/2的同时,使得小珂在接下来的n天中将所有的项链都刚好带了一遍。
例如 n=7,取k=3
天数 项链编号
1 1
2 4
3 7
4 3
5 6
6 2
7 5
输入第一行有一个整数 0<m<10000 表示有m组测试数据,接下来的m行每行有一个整数,表示小珂的项链个数2<=m<2^31输出输出m个k的值样例输入
2
2
7
样例输出
1
3
刚开始我以为是找规律。结果规律找到了- -,我发现这个组合的一个数a[i]+K%n=a[i+1]或者==0 。可是,数据范围太大,,M>13就要等很久~~
打表出来前12个数据。
m k
3 1
4 1
5 2
6 1
7 3
8 3
9 4
10 3
11 5
12 5
乍一看没什么特点,仔细观察就会发现,K与M互质- -,有人说 6与5也互质啊- -,要知道K<=m/2。得到这个那就好办了。
#include<iostream> using namespace std; int gcd(int a, int b) { return b ? gcd(b, a % b) : a; } int main() { int nCase, n, t; cin >> nCase; while (nCase--) { cin >> n; t = n >> 1; while (gcd(n, t--) != 1); cout << ++t << endl; } }
相关文章推荐
- nyoj 145 聪明的小珂
- NYOJ 145 聪明的小珂
- nyoj145 聪明的小珂
- nyoj-145-聪明的小珂
- 145 聪明的小珂
- NYOJ-聪明的小珂
- nyoj145 聪明的小柯
- nyoj-145-聪明的小柯
- NYOJ154 聪明的小珂 【互质】
- nyoj-171-聪明的KK
- NYOJ 聪明的kk 171
- NYOJ 171 聪明的kk
- nyoj--171--聪明的kk(动态规划--博弈)
- nyoj 171 聪明的kk
- NYOJ——聪明的kk
- nyoj 144小珂的苦恼(&&关于如何不定方程有整数解问题)
- nyoj 171 聪明的kk
- NYOJ - 171 聪明的kk
- NYoj_171聪明的kk
- NYOJ题目171-聪明的kk(dp)