从写完代码到现在一直在调,看完题解发现思路一致,但是部分点会输出负数,所以只拿了5分。
所有错了的点均输出的是负数。
代码:
#include <bits/stdc++.h>
#define int long long
using namespace std;
int n, m, a, b, x, ans;
signed main()
{
scanf ("%lld %lld %lld %lld %lld", &n, &m, &a, &b, &x);
if (x)
{
if ((n % 2) & (m % 2) & (a % 2) & (b % 2))
ans = n * m - ((n + 1) / 2) * ((m + 1) / 2) + 1;
else ans = n * m - ((n + 1) / 2) * ((m + 1) / 2);
}
else ans = n * m - ((n + (a % 2)) / 2) * ((m + (b % 2)) / 2);
cout << ans << endl;
return 0;
}
有没有哪位大佬能帮我指出一下错误,谢谢!!