2015百度之星 列变位法解密
列变位法解密
4 159263748 4 Hw doeetrrlloellc adoomm!,my e w 7 Toodming is best 16 sokaisan 1
Case #1: 123456789 Case #2: Hello, welcome to my dream world! Case #3: Toodming is best Case #4: sokaisan
Problem's Link: http://bestcoder.hdu.edu.cn/contests/contest_showproblem.php?cid=584&pid=1002
Mean:
略
analyse:
水题,直接画图模拟
Time complexity: O(n)
Source code:
/* * this code is made by crazyacking * Verdict: Accepted * Submission Date: 2015-05-23-13.06 * Time: 0MS * Memory: 137KB */ #include <queue> #include <cstdio> #include <set> #include <string> #include <stack> #include <cmath> #include <climits> #include <map> #include <cstdlib> #include <iostream> #include <vector> #include <algorithm> #include <cstring> #define LL long long #define ULL unsigned long long using namespace std; const int MAXN=100010; char s[MAXN]; int cha[MAXN]; int main() {int t,Cas=1;scanf("%d",&t);getchar();while(t--){gets(s);int n;scanf("%d",&n);getchar();printf("Case #%d:\n",Cas++);int len=strlen(s);int line;if(len%n==0) line=len/n;else line=len/n+1;int m=len%n;memset(cha,0,sizeof cha);int cnt=1;if(m!=0){for(int i=m+1;i<n;++i)cha[i]=cnt++;}for(int i=0;i<line;++i){if(len%n!=0 && i==line-1){int sta=i;for(int j=0;j<m;++j){printf("%c",s[sta]);sta+=line;}}else{int sta=i;for(int j=0;j<n;++j){printf("%c",s[sta-cha[j]]);sta+=line;}}}puts("");}return 0; } /**/
View Code
转载于:https://www.cnblogs.com/crazyacking/p/4523962.html
2015百度之星 列变位法解密相关推荐
- 百度之星-列变位法解密
列变位法是古典密码算法中变位加密的一种方法,具体过程如下 将明文字符分割成个数固定的分组(如5个一组,5即为密钥),按一组一行的次序整齐排列,最后不足一组不放置任何字符,完成后按列读取即成密文. 比如 ...
- 字符串处理 2015百度之星资格赛 1002 列变位法解密
题目传送门 1 /* 2 字符串处理:要求解码,然而二维数组开不下,可以直接输出 3 只要在余数的地方判断一下就行了,vector的效率不高 4 另外:感觉麻烦的地方应该纸上写写就清楚了 5 */ 6 ...
- 百度之星 2015资格赛 列变位法解密【字符串】
列变位法解密 Accepts: 335 Submissions: 1017 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536 ...
- 2015年百度之星程序设计大赛 - 资格赛:1002列变位法解密
列变位法解密 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others) Problem De ...
- 百度之星2015资格赛 列变位法解密
列变位法解密 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others) Problem De ...
- 字符串处理 百度之星资格赛 1002 列变位法解密
题目传送门 1 /* 2 字符串处理:要求解码,然而二维数组开不下,可以直接输出 3 只要在余数的地方判断一下就行了,vector的效率不高 4 */ 5 #include <cstdio> ...
- 列变位法解密--百度之星B题
http://bestcoder.hdu.edu.cn/contests/contest_showproblem.php?cid=584&pid=1002 关于百度之星的晋级规则说明 列变位法 ...
- 列变位法解密-2016百度之星 - 测试赛(热身,陈题)
列变位法解密 Accepts: 296 Submissions: 904 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/ ...
- 列变位法解密(2016百度之星 - 测试赛(热身,陈题))
列变位法解密 Accepts: 132 Submissions: 351 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/ ...
最新文章
- 2020-12-13
- JDK8 指南(译)
- STL sector 应用
- 数据库高级知识——mysql架构介绍(一)
- 微服务开发的 10 个最佳实践
- python用circle画多边形_pythonopencv圆、椭圆与任意多边形的绘制
- ❤️java多线程并发编程入门 教程合集❤️
- 昨天要成为反弹一日游?关键看下午了
- 投标文件 医院弱电系统_智慧建筑办公楼弱电系统如何规划设计?需要设计哪些系统?...
- wacom win10 未连接任何设备 驱动的问题 解决影拓3手绘板等老设备驱动无法在win10使用的问题
- 算法之BFS算法框架
- 全国各地土特产一览表1
- 计算机itpt证书有什么用,ITPT信息技术应用专业能力培训项目认证课程体系表.pdf...
- 谈谈MySQL那些事
- python浓缩(13)面向对象编程
- android - 银联在线支付
- Go日志-Uber开源库zap使用
- 谷歌Xswitch插件下载及安装失败原因
- 六角星问题---蓝桥杯练习
- The Karplus-Strong Algorithm