POJ 1026 Cipher G++

xiaoxiao2021-02-28  113

#include <iostream> #include <cstring> #include <cstdio> using namespace std; //抄博友程序 巧妙 //有知识 //ACSII 10 换行键 int da[204]; int ha[204]; int main() { while(1) { int n; cin>>n; if(n==0) { break; } for(int i=0;i<n;i++) { int t; cin>>t; da[t-1]=i;// } for(int i=0;i<n;i++) { int js=1; int t=da[i]; while(t!=i) { t=da[t]; js++; } ha[i]=js; } while(1) { int k; cin>>k; if(k==0) { break; } char c; c=getchar();//抄博友 int i=0; char s[204]; memset(s,0,sizeof(s)); char jg[204]; memset(jg,0,sizeof(jg)); while(1) { c=getchar(); if(c=='\n') { break; } s[i]=c; i++; } for(;i<n;i++) { s[i]=' '; } //s[n]=0; /* for(int ii=0;ii<n;ii++) { cout<<s[ii]<<" "<<(int)(s[ii])<<endl; }*/ //cout<<s<<endl; //cout<<s<<endl; for(int ii=0;ii<n;ii++) { int m=k%ha[ii]; int t=ii; for(int j=0;j<m;j++) { t=da[t]; } jg[ii]=s[t]; } jg[n]=0; cout<<jg<<endl; } cout<<endl; } return 0; }

 

转载请注明原文地址: https://www.6miu.com/read-47366.html

最新回复(0)