Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <fstream>
- #include <cstring>
- using namespace std;
- ifstream in("bifid.in");
- ofstream out("bifid.out");
- char s[10001], t[6][6];
- int c,v[20001],l;
- struct
- {
- int l=0,c=0;
- } p[30];
- int main()
- {
- int i,j;
- in>>c;
- for(i=1; i<=5; i++)
- for(j=1; j<=5; j++)
- {
- in>>t[i][j];
- t[i][j]=tolower(t[i][j]);
- p[t[i][j]-'a'].l=i;
- p[t[i][j]-'a'].c=j;
- }
- in>>s;
- l=strlen(s);
- if(c==1)
- {
- for(i=0; i<l; i++)
- {
- v[i]=p[s[i]-'a'].l;
- v[i+l]=p[s[i]-'a'].c;
- }
- for(i=0; i<=2*l-2; i+=2)
- out<<t[v[i]][v[i+1]];
- }
- else
- {
- int dim=0;
- for(i=0; i<l; i++)
- {
- v[dim]=p[s[i]-'a'].l;
- dim++;
- v[dim]=p[s[i]-'a'].c;
- dim++;
- }
- for(i=0; i<l; i++)
- out<<t[v[i]][v[i+l]];
- }
- in.close();
- out.close();
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement