比赛 矩阵乘法练习赛 评测结果 AAAAAAATTT
题目名称 最大公约数和 最终得分 70
用户昵称 对立猫猫对立 运行时间 6.116 s
代码语言 C++ 内存使用 3.51 MiB
提交时间 2025-04-28 19:59:31
显示代码纯文本
#include <bits/stdc++.h>
#define ll long long
#define fu_xuan return 0;
int N;
ll ans = 0;
using namespace std;
int main()
{
	freopen("gcdsum.in","r",stdin);
	freopen("gcdsum.out","w",stdout);
	scanf("%d",&N);
	int n = (int)sqrt(N);
	for(int i = 1;i <= n;i++)
	{
		if(i > N) break;
		int cnt = 0;
		while(i + cnt * n <= N)
		{
			ans += __gcd(i + cnt * n,N);
			cnt++;
		}
	}
	printf("%lld\n",ans);
	fu_xuan
}