为什么S = p / 2 * m 这样写会有两个测试集不过?
查看原帖
为什么S = p / 2 * m 这样写会有两个测试集不过?
1143000
lianghuixuan楼主2024/7/16 08:08

下面这样写就过了

#include<bits/stdc++.h>
using namespace std;
int n, m, p;
int gcd(int a, int b)
{
	int t;
	while(b)
	{
		t = a % b;
		a = b;
		b = t;
	}
	return a;
}
int main()
{
	cin >> n >> m >> p;
	int s = m * p / 2;
	int b = gcd(n ,m) + gcd(abs(p - n), m) + p;
	int a = s - b / 2 + 1;
	cout << a << endl;
	return 0;
}
2024/7/16 08:08
加载中...