求助读入
查看原帖
求助读入
448887
cancan123456楼主2022/7/10 20:48

为啥我读进来的 k 是 0?

#include <cstdio>
using namespace std;
typedef long long ll;
const ll p = 19491001;
ll inv(ll x) {
	return x == 1 ? 1 : (p - p / x) * inv(p % x) % p;
}
ll read() {
	ll ans = 0;
	char c;
	do {
		c = getchar();
	} while ('0' > c || c > '9');
	do {
		ans = ((ans * 10) + (c - '0')) % p;
		c = getchar();
	} while ('0' <= c && c <= '9');
	return ans;
}
ll a[1000005];
int main() {
	ll n = read();
	ll k;
	scanf("%lld", &k);
	for (ll i = 1; i <= k; i++) {
		scanf("%lld", a + i);
	}
	ll sum = 0;
	for (ll i = 1; i <= k; i++) {
		sum = (sum + a[i]) % p;
	}
	printf("%lld", (n * inv(k) % p * sum % p + 2 * (n - 1) % p * inv(k) % p * inv(k) % p * sum % p) % p);
	return 0;
}
2022/7/10 20:48
加载中...