#include<stdio.h> #include<string.h> int main() { char dictionary[105][10]; char biao[105][10]; char a[10]; int pos=0; //开始输入 while(scanf("%s",dictionary[pos]),strcmp(dictionary[pos],"XXXXXX")) pos++; for(int i=0;i<pos-1;i++) { for(int j=i+1;j<pos;j++) { if(strcmp(dictionary[i],dictionary[j])==1) { char b[10]; strcpy(b,dictionary[i]); strcpy(dictionary[i],dictionary[j]); strcpy(dictionary[j],b); } //else if() } } for(int i=0;i<pos;i++) strcpy(biao[i],dictionary[i]); for(int k=0;k<pos;k++) { int p=strlen(biao[k]); for(int i=0;i<p-1;i++) { for(int j=i+1;j<p;j++) { if(biao[k][i]>biao[k][j]) { int temp=biao[k][i]; biao[k][i]=biao[k][j]; biao[k][j]=temp; } } } } //开始破译 while(1) { memset(a,'\0',10); scanf("%s",a); if(strcmp(a,"XXXXXX")==0) return 0; int len=strlen(a); for(int i=0;i<len-1;i++) //sort { for(int j=i+1;j<len;j++) { if(a[i]>a[j]) { int temp=a[i]; a[i]=a[j]; a[j]=temp; } } } int f=1; //排序完了就开始破译吧!!! for(int i=0;i<pos;i++) { if(strcmp(a,biao[i])==0) { f=0; printf("%s\n",dictionary[i]); } } if(f) printf("NOT A VALID WORD\n"); printf("******\n"); } }
Poj1318 解密
最新推荐文章于 2016-07-24 23:59:03 发布