浙工ACM1077

来源:互联网 发布:用友网络股份有限公司 编辑:程序博客网 时间:2024/05/22 14:36
#include<iostream>
#include<string>
using namespace std;
int main(){
int n;
cin>>n;
while(n--){
int m;
cin>>m;
string *a = new string[m];
for(int i=0;i<m;i++)
cin>>a[i];
for(int j=0;j<m;j++){
for(int k=0;k<a[j].length();k++){
if(a[j][k]-'0'==8)
a[j][k]='1';
else if(a[j][k]-'0'==1)
a[j][k]='2';
else if(a[j][k]-'0'==5)
a[j][k]='3';
else if(a[j][k]-'0'==2)
a[j][k]='4';
else if(a[j][k]-'0'==3)
a[j][k]='5';
else if(a[j][k]-'0'==9)
a[j][k]='6';
else if(a[j][k]-'0'==4)
a[j][k]='7';
else if(a[j][k]-'0'==7)
a[j][k]='8';
else if(a[j][k]-'0'==6)
a[j][k]='9';
else
a[j][k]='0';
}
}



int h,r;
for(h=0;h<m-1;h++){
for(r=h+1;r<m;r++){
if(a[h].length() > a[r].length())
swap(a[h],a[r]);
}
}

        for(h=0;h<m-1;h++){
for(r=h+1;r<m;r++){
if(a[h].length() == a[r].length())
{
bool isW = true;
int q = 0;
while(isW && q < a[h].length())
{
if(a[h][q] > a[r][q])
{
swap(a[h],a[r]);
isW = false;
}
q++;
}
}


}
}

 
for(int t=0;t<m;t++){
for(int k=0;k<a[t].length();k++){
if(a[t][k]-'0'==1)
a[t][k]='8';
else if(a[t][k]-'0'==2)
a[t][k]='1';
else if(a[t][k]-'0'==3)
a[t][k]='5';
else if(a[t][k]-'0'==4)
a[t][k]='2';
else if(a[t][k]-'0'==5)
a[t][k]='3';
else if(a[t][k]-'0'==6)
a[t][k]='9';

else if(a[t][k]-'0'==7)
a[t][k]='4';
else if(a[t][k]-'0'==8)
a[t][k]='7';
else if(a[t][k]-'0'==9)
a[t][k]='6';
else
a[t][k]='0';
}
}
for(int f=0;f<m;f++){
if(f+1==m)
cout<<a[f];
else
cout<<a[f]<<" ";
}
cout<<endl;



 


return 0;
}
原创粉丝点击