Untitled
unknown
plain_text
5 months ago
1.1 kB
5
Indexable
#include <iostream> #include <vector> #define MOD 998244353 using namespace std; // Function to calculate modular inverse using Fermat's Little Theorem long long modInverse(long long a, long long m) { long long res = 1, p = m - 2; while (p > 0) { if (p % 2 == 1) res = (res * a) % m; a = (a * a) % m; p /= 2; } return res; } int main() { int N; cin >> N; vector<long long> red(N), green(N); for (int i = 0; i < N; i++) { cin >> red[i]; } for (int i = 0; i < N; i++) { cin >> green[i]; } long long expected_weight_sum = 0; for (int i = 0; i < N; i++) { expected_weight_sum = (expected_weight_sum + red[i] + green[i]) % MOD; } expected_weight_sum = (expected_weight_sum * modInverse(2, MOD)) % MOD; long long N_inv = modInverse(N, MOD); for (int K = 1; K <= N; K++) { long long result = (expected_weight_sum * K % MOD) * N_inv % MOD; cout << result << " "; } cout << endl; return 0; }
Editor is loading...
Leave a Comment