poj 1617 Crypto Columns

#include <iostream>
#include
<algorithm>
#include
<string>
using namespace std;
int main()
{
char ch[12],cpy[12],letter[110];
int list[12],tag[12],i,j;
while(cin>>ch&&strcmp(ch,"THEEND")!=0)
{
cin
>>letter;
strcpy(cpy,ch);
sort(ch,ch
+strlen(ch));
memset(tag,
-1,sizeof(tag));

for(i=0;i<strlen(cpy);i++)
for( j=0;j<strlen(ch);j++)
if(tag[j]==-1&&cpy[i]==ch[j])
{
list[i]
=j;tag[j]=1;
break;
}

int interval=strlen(letter)/strlen(cpy);
for(i=0;i<interval;i++)
for(j=0;j<strlen(cpy);j++)
cout
<<letter[interval*list[j]+i];
cout
<<endl;
}
return 0;
}

  

posted on 2011-07-18 11:28  sysu_mjc  阅读(154)  评论(0编辑  收藏  举报

导航