Description
Do you know password table? A password table is used to protect the security of the online account. When a user needs to login to his/her online account or pay for money, he/she may need to fill in the password according to his/her own password table. For example, if one user has the following table and the online system requires him/her to input the password of “A4B7D1”, he/she may input “577000”.
Input
The first line of the input contains an integer T(T≤100), indicating the number of test cases. The first line of each case contains three numbers n(5≤n≤9), m(5≤m≤9) and q(1≤q≤100) representing the length and width of the password table, and the total number of queries (Look at the password table above, its length is 8 and its width is 5). Each of the following n lines contains m numbers, representing the given password table.
Then, each of the following q lines represents a query with the format of "L1D1L2D2L3D3" (L1, L2 and L3 are letters. D1, D2 and D3 are digits), just like the example in paragraph one.
Output
For each test case, print a line containing the test case number (beginning with 1). For each query in one test case, please output its corresponding password in one line.
8 5 2
94 62 80 00 24
79 11 07 80 03
32 66 12 89 48
57 82 36 69 32
54 66 91 54 93
12 14 37 92 83
52 70 33 89 95
59 91 01 80 69
A4B7D1
577000
Do you know password table? A password table is used to protect the security of the online account. When a user needs to login to his/her online account or pay for money, he/she may need to fill in the password according to his/her own password table. For example, if one user has the following table and the online system requires him/her to input the password of “A4B7D1”, he/she may input “577000”.
Input
The first line of the input contains an integer T(T≤100), indicating the number of test cases. The first line of each case contains three numbers n(5≤n≤9), m(5≤m≤9) and q(1≤q≤100) representing the length and width of the password table, and the total number of queries (Look at the password table above, its length is 8 and its width is 5). Each of the following n lines contains m numbers, representing the given password table.
Then, each of the following q lines represents a query with the format of "L1D1L2D2L3D3" (L1, L2 and L3 are letters. D1, D2 and D3 are digits), just like the example in paragraph one.
Output
For each test case, print a line containing the test case number (beginning with 1). For each query in one test case, please output its corresponding password in one line.
Sample Input
8 5 2
94 62 80 00 24
79 11 07 80 03
32 66 12 89 48
57 82 36 69 32
54 66 91 54 93
12 14 37 92 83
52 70 33 89 95
59 91 01 80 69
A4B7D1
E5C3B2
Sample Output
577000
931211
网上找的:
#include<iostream>
#include<cstdio>
#include<algorithm>
#include<cstring>
using namespace std;
#define N 10
int T;
int n , m , q;
int G[N][N];
char str[N];
int main(){
scanf("%d" , &T);
int t = 1;
while(T--){
printf("Case %d:\n" , t++);
scanf("%d%d%d" , &n , &m , &q);
for(int i = 1 ; i <= n ; i++){
for(int j = 1 ; j <= m ; j++)
scanf("%d" , &G[i][j]);
}
for(int i = 0 ; i < q ; i++){
scanf("%s" , str);
printf("%02d" , G[str[1]-'0'][str[0]-'A'+1]);
printf("%02d" , G[str[3]-'0'][str[2]-'A'+1]);
printf("%02d\n" , G[str[5]-'0'][str[4]-'A'+1]);
}
}
return 0;
}
自己写的(已改正):
#include <iostream>
#include <stdio.h>
#include <cstring>
using namespace std;
int main()
{
int t;
cin>>t;
int n,m,q;
int a[20][20];
int a1[200][20];
char str[20];
int d=0;
for(int k=1;k<=t;k++)
{
cin>>n>>m>>q;
memset(a1,0,sizeof(a1));
memset(a,0,sizeof(a));
for(int i=1;i<=n;i++)
{
for(int j=1;j<=m;j++)
{
cin>>a[i][j];
}
}
for(int i=0;i<q;i++)
{
scanf("%s",str);
a1[i][0]=a[str[1]-'0'][str[0]-'A'+1];
a1[i][1]=a[str[3]-'0'][str[2]-'A'+1];
a1[i][2]=a[str[5]-'0'][str[4]-'A'+1];
}
cout<<"Case "<<k<<":"<<endl;
for(int i=0;i<q;i++)
{
for(int j=0;j<3;j++)
{
printf("%02d",a1[i][j]);
}
cout<<endl;
}
}
return 0;
}
/*
8 5 2
94 62 80 00 24
79 11 07 80 03
32 66 12 89 48
100 82 36 69 32
54 66 91 54 93
12 14 37 92 83
52 70 33 89 95
59 91 01 80 69
A4B7D1
E5C3B2
*/