fork(3) download
  1. #include <iostream>
  2.  
  3. std::string coder(std::string &in, int n){
  4. std::string out = "";
  5. int i=0, j=0, shift, maxShift, totalShift = 0;
  6. bool flague = true;
  7.  
  8. if(n==1) {
  9. return in;
  10. }
  11. else{
  12. maxShift = 2*n-2;
  13. while(i<n){
  14. shift = (!i || i==n-1) ? maxShift : 2*(n-i-1);
  15. out += in[i];
  16. flague = true;
  17. totalShift = i;
  18. while(totalShift<in.length()){
  19. totalShift += (flague) ? shift : 2*i;
  20. if(((flague) ? shift : 2*i) && totalShift < in.length())
  21. out += in[totalShift];
  22.  
  23. flague = !flague;
  24. }
  25. ++i;
  26. }
  27. return out;
  28. }
  29. }
  30.  
  31. int main(){
  32. std::ios::sync_with_stdio(false);
  33. int t, n;
  34. std::string in;
  35. std::cin>>t;
  36. while(t--){
  37. std::cin>>in>>n;
  38. std::cout<<coder(in,n)<<std::endl;
  39. }
  40. return 0;
  41. }
Success #stdin #stdout 0s 3468KB
stdin
2
ADRLOQBIFYGJAORTPWDLZLAWAPCOUYUMHIWDPPZYZCEQAAFAGEQOLVBXARUXUONGCZULVHKXRPBAOVWRTZLYYVTCCYPUZIQIGDXVPXISFOBOGZSPHCGYDNDXAFXXILRWBZFSFTPVVSZOBRPZEEFVNPPVYTCRKZAKPCLOGNZEPSBUNLIALDUDELALWVMSDNIOVKWIITVVVUDRQKYASDTBYFNUGIEQSNPURZSBBOEJWQYZQVXJGURKSEAPYZIMJODYXMKUZXFFHUAVUAWSBZCSMCQWTTNRKTLCKXZVKCLDRMRJPRIFOKZFLICYWDFPLQRBNHWDRBDLKILJKTSSCSTGBIGOYYKULACYTGHLIDJJHFCEWTRWVXAOZRFCUYWDGXJOIAXRPAVTFWSCSMOCICEKVUBEOPTITLERNMKCEBVYBDGXRFRUFDOZCGDDDPHUCLXLYEDXEFZGMCBPCHQUQLRFUNYEJPJPCPMBHPKWCFEQPCPCMSAVWGRRWKTQUPIHMIUNDLJNVFIYUGMISENILCQCKAFMFDRWXLKRHMOCIRZRMOOEECPXEWGERQMNIYVTOAURROAPFAHXKRLTHFVJMBYHPIADGSIDRXBENSHUAJDBMJTUEKADNOCAVBJAJFQDWQFSDBQCPRXYCKNPGGFQUJUMANQBORHFTUPUXYTSGRUWVRUQGVKRZPDZSODIDXTRRZXEHTGNSOHUZMZSUXVMUSIMBAOLEQZYAJSPVDWCMCYXLYJSDOUIHSDZQQPLDHBQQPWJUZBOXURTDDULIKYVOAZXJURFLAAUXCLNHKPCF 4
WA 7
stdout
ABADAUPEGBUURWYPGIGGARFZEPKLPIEMVVQTGPBYGAJKHWMNKLPZWRRLCGLHHRZWIVSEOEEGFDCDMQUJHEMRUUVMLFXOMPRVRHHYGBATNJWQCFAHXUGDDXSZUOAWLUQBURIZLLFDQIJOWLWPYMDPCQAEVXXOZLXPVRYVYUIDXSOZCYXFLWSTSOZEPVRZCOESLADLVSOKTVRKDBUINUBOQZJUEPMOMUFUASSCTRCXCDJRKFYDQBDBIJSSIOUAGLJFTWORYDOAATCMCKEPLRCBDXUDGDULEXGCHUFNPPBPFQCSGRQPINNFGIICAMWLMCROCXEQYTROAXTFBHDSXEUJJUDOBADQBCYKGQMNRFUYRWQVPZIXZENOMSMSALYJDCXYOIZQHQJZUTLKAXFACNCROFGRPZACUHWZZAFQLAUNCVKBOTLTCZQXPFBSHDDXIBFPVBPFNYCAPGZBNLUAWDIWIVDYSYNESRSEWQXRSYIDXZFAUBCQTKLZKRRIOLCFLNWDKKSTBYKCTIJCWVAFUGJXPFSOIVBTTNKVBRROCDHXYEZBCQRYJCMKCPPAWWTIMDJIUSNQKFRKHIZOEEGMIOUAFKLVMPAIRNHDMEACVJQFDPXNGUUQOTPTGVUKZSDTRHGHZUVIBEZSVMYJDHDPDQWBXDUYOJRAXHPLYTLOIYAORGHAZCIVOPNXZVRVTKNUDLNIUAFQZJVKZYXVZWTVMFIPHLTGYYDEXCXRWCUIMYFZPLFPLEPWCVKHLYECDRREWNAPRJIDSBKAFSRPJBUSRRORTUXMQPCSSLPODVUUK
WALOQB