本文共 1441 字,大约阅读时间需要 4 分钟。
#include#include #include #include #include using namespace std;int main() { int k, m, n, N; long long p; while (scanf("%d%d%d%lld", &k, &m, &n, &p)) { vector a(k + 1, 0); for (int i = 1; i <= k; ++i) { scanf("%lld", &a[i]); } sort(a.begin() + 1, a.end()); if (n == 1) { N = m; } else { N = (pow(n, m) - 1) / (n - 1); } long long ans = 0; for (int i = 1; i < N; ++i) { int parent = i / n; if (parent == 0) { parent = i; } a[i] = (a[parent] % p + a[i] % p) % p; ans = (ans + a[i]) % p; } cout << ans << endl; } return 0; }
#include#include #include #include #include using namespace std;int main() { int n, a[10]; string s; while (cin >> n >> s) { memset(a, 0, sizeof(a)); for (size_t i = 0; i < n; ++i) { if (s[i] == 'x') { a[1]++; } else if (s[i] == 't' && a[1]) { a[2]++; a[1]--; } else if (s[i] == 'C' && a[2]) { a[3]++; a[2]--; } else if (s[i] == 'p' && a[3]) { a[4]++; a[3]--; } else if (s[i] == 'c' && a[4]) { a[5]++; a[4]--; } } cout << a[5] << endl; } return 0;}
转载地址:http://hwfm.baihongyu.com/