依然是谋财害命之星热身赛1002密码题

本文介绍了一种简单的密码转换算法,该算法将明文转换为密文。通过特定步骤重新排列字符的位置来实现加密效果。具体过程包括读取输入字符串和整数k,然后按照k进行分组并重新排序。

一道密码题 由明文推密文……


并没有什么算法


#include <iostream>
#include <cstdio>
#include <cstring>

using namespace std;

char s[100010];
char p[100010];

int main()
{
     int t,k;
     int len,yu,ci;
     int count;

     scanf("%d",&t);
     getchar();
     for(int a=1;a<=t;++a)
     {
          count=0;

          gets(s);
          scanf("%d",&k);
          getchar();
          len=strlen(s);
          yu=len%k;
          ci=len/k;

          for(int i=0;i<yu;++i)
               for(int j=0;j<=ci;++j)
               p[j*k+i]=s[count++];

          for(int i=yu;i<k;++i)
               for(int j=0;j<ci;++j)
               p[j*k+i]=s[count++];
          printf("Case #%d:\n",a);
          for(int i=0;i<count;++i)
               printf("%c",p[i]);
               printf("\n");
     }
     return 0;
}








评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值