| Run ID | 作者 | 问题 | 语言 | 测评结果 | 分数 | 时间 | 内存 | 代码长度 | 提交时间 |
|---|---|---|---|---|---|---|---|---|---|
| 41216 | LYLAKIOIAKIOI | 【BJ】T2 | C++ | 解答错误 | 0 | 3714 MS | 49456 KB | 1602 | 2026-04-11 15:59:51 |
#include<bits/stdc++.h> using namespace std; int N=2542970; uint64_t s = N, t = 0; uint64_t next() { s ^= (s << 13); s ^= (s >> 7); s ^= (s << 17); return s; } int a[2050][2050],b[2050][2050],c[2050][2050]; int main(){ int n;cin>>n; if(n!=5) return 0; N=2048;int type=3; for (int i = 0; i < N; i++) { for (int j = 0; j < N; j++) { a[i][j] = next() % N + 1; b[i][j] = next() % N + 1; } } if (type == 1) { for (int i = 0; i < N; i++) { for (int j = 0; j < N; j++) { for (int k = 0; k < N; k++) c[i][j] += a[i][k] * b[k][j]; } } } else if (type == 2) { for (int i = 0; i < N; i++) { for (int k = 0; k < N; k++) { for (int j = 0; j < N; j++) c[i][j] += a[i][k] * b[k][j]; } } } else { for (int i = 0; i < N; i++) { for (int k = 0; k < N; k++) { uint64_t aik=a[i][k]; for (int j = 0; j < N; j += 8) { c[i][j + 0] += aik * b[k][j + 0]; c[i][j + 1] += aik * b[k][j + 1]; c[i][j + 2] += aik * b[k][j + 2]; c[i][j + 3] += aik * b[k][j + 3]; c[i][j + 4] += aik * b[k][j + 4]; c[i][j + 5] += aik * b[k][j + 5]; c[i][j + 6] += aik * b[k][j + 6]; c[i][j + 7] += aik * b[k][j + 7]; } } } } uint64_t ans = 0; for (int i = 0; i < N; i++) { for (int j = 0; j < N; j++) ans ^= c[i][j]; }cout<<ans<<endl; }