Circle

Circle

https://ac.nowcoder.com/acm/problem/19805

题目

要把 个数字首尾连接组成一个环,使得相邻元素互质的对数尽可能多。请输出最大对数。

解题思路

不考虑互质,一共有 n 对相邻的数。

由更相减损术知,数对 (x-1, x) 的最大公因数与 (1, x-1) 的最大公因数相同,即为 1,互质。
所以,可以将 n 个数字按从小到大的顺序排列并连接,然后将 1 和 n 连接,组成一个环,每对相邻的数都互质。

C++代码

#include<iostream>
using namespace std;

int main(){
    int n;
    cin >> n;
    cout << n << endl;
    return 0;
}
全部评论

相关推荐

hso_:哈哈哈哈哈哈我没offer一样在同一道题开喷了
投递深圳同为数码等公司10个岗位
点赞 评论 收藏
分享
评论
点赞
收藏
分享
牛客网
牛客企业服务