| ||||||||||
| Online Judge | Problem Set | Authors | Online Contests | User | ||||||
|---|---|---|---|---|---|---|---|---|---|---|
| Web Board Home Page F.A.Qs Statistical Charts | Current Contest Past Contests Scheduled Contests Award Contest | |||||||||
我也贴个代妈,好水~#include <iostream>
using namespace std;
const int offset[17] = {0, 0, 1, 0, 5, 0, 0, 0, 21, 0, 0, 0, 0, 0, 0, 0, 85};
void print(int n){
if(n < 10) cout << " " << n;
else if(n < 100) cout << " " << n;
else cout << " " << n;
}
int main() {
int cases;
cin >> cases;
for(int ii = 0; ii < cases; ii++){
cout << "Case " << ii+1 << endl << endl;
int n, fei;
cin >> n;
int test[256];
cin >> fei;
if(fei != n*n) return 0;
for(int i = 0; i < n*n; i++) {
cin >> fei;
cin >> test[fei-offset[n]];
}
int data[512];
for(int i = 0; i < 512; i++) data[i] = -1;
cin >> fei;
for(int i = 0; i < fei; i++){
int temp;
cin >> temp;
cin >> data[temp];
}
while(1){
int cnt = 0;
for(int i = 0; i < offset[n]; i++){
if(data[i] != -1){
cnt++;
for(int j = 1; j < 5; j++){
data[4*i+j] = data[i];
}
data[i] = -1;
}
}
if(cnt == 0) break;
}
int *rdata = data + offset[n];
int res[256];
for(int i = 0; i < n*n; i++){
res[test[i]] = rdata[i];
}
for(int i = 0; i < n*n; i++){
print(res[i]);
if(i%n == n-1) cout << endl;
}
cout << endl;
}
return 0;
}
Followed by: Post your reply here: |
All Rights Reserved 2003-2013 Ying Fuchen,Xu Pengcheng,Xie Di
Any problem, Please Contact Administrator