Decryption sequence 【模拟】【思维】
来源:互联网 发布:淘宝卖童装客服 编辑:程序博客网 时间:2024/06/06 02:18
问题 I: Decryption sequence
时间限制: 1 Sec 内存限制: 128 MB题目描述
加密是个被广泛关注的问题,现在给出一种对数列加密的算法:
假设有原数列S,S是1到
现在定义一个数列P,满足:
同时我们通过以下操作由S生成另一个数列T:第一步将S所有奇元素删除,第二步把剩下的所有偶元素按照原来的位置关系排列好,并都除以2,这样得到一个新的数列。
例如:
对于数列S={4,8,3,2,5,7,1,6},我们可以生成数列P={1,2,1,4,8,2,4,8},数列T={2,4,1,3}。
我们把数列P称为密文,T称为密钥,顾名思义通过这两个数列,可以还原出原数列。
现在请你完成数列的解密程序。
输入
多组测试数据(不超过10组),请处理到文件结束。
第一行是一个正整数m(
第二行有m个正整数
第三行有m/2个正整数
输出
请输出原数列S,元素中间以一个空格隔开。
样例输入
81 2 1 4 8 2 4 82 4 1 3
样例输出
4 8 3 2 5 7 1 6
思路: 当时不知道怎么了。。看了 半个多小时,硬是没有任何思路,,真是要死。。
现在再来看看,,还是能看出点端倪,真是。。。看来临场发挥还是不行呐,以后多参加点比赛,让自己尽快适应那种环境,
这道题,其实就是 弄清楚 主要就是在p序列和s序列的关系密切,。好难说明白。看代码把
代码
#include<stdio.h>#include<string.h>#include<math.h>#include<algorithm>#include<queue>#define inf 0x3f3f3f#define M 100+10int main(){int m;while(~scanf("%d",&m)){int p[M]={0};int t[M]={0};for(int i=1;i<=m;i++)scanf("%d",&p[i]);for(int i=1;i<=m/2;i++){int k;scanf("%d",&k);t[i]=k*2;// 还原t序列}int v[M]={0}; // int j=1;for(int i=1;i<=m;i++){if(p[i]==i) // 只要相等 就表明这个是原来的S值是偶数{p[i]=t[j++]; // 依次将t中的偶数传入就可以v[i]=1; // 并且记录这个数字是经过转换的 } }for(int i=1;i<=m;i++){if(!v[i]) //对于没有经历转换的数字{p[i]=p[p[i]]-1; // 将s到p序列的 转换条件 逆向一下就可以了}}
printf("%d",p[1]); // 输出答案for(int i=2;i<=m;i++)printf(" %d",p[i]);putchar('\n');}return 0;}
0 0
- Decryption sequence 【模拟】【思维】
- Decryption sequence [模拟]
- HPU 1278: Decryption sequence
- 1278: Decryption sequence
- 思维模拟
- Number Sequence(思维题)
- Encryption && Decryption
- hdoj 2062 Subset sequence 【思维】
- hdu1005 Number Sequence (思维+规律)
- Number Sequence (思维,二进制)
- HDU 4908 BestCoder Sequence 思维
- hdu 6047 Maximum Sequence【思维】
- Number Sequence (啥啥啥思维)
- [模拟]uva10706 - Number Sequence
- UVA1594 Ducci Sequence 【模拟】
- Parenthese sequence -模拟
- [NOIP2017模拟]Sequence
- [NOIP模拟]Sequence
- 利用 TensorFlow 高级 API Keras 实现 MLP,CNN,LSTM
- android 利用命令行查看keystore的SHA1和MD5
- Linux的进程/线程间通信方式总结
- Java 7之多线程线程池
- PAT-A1009
- Decryption sequence 【模拟】【思维】
- (斯坦福机器学习课程笔记)混合高斯模型,朴素贝叶斯,混合朴素贝叶斯模型,因子分析
- css3动画制作太极图
- Android开发时遇到的问题
- tppabs批量删除
- java基础 第三章 数组
- 你需要知道的 16 个 Linux 服务器监控命令
- 开发一款类Hololens需要哪些技术?
- 如何用 TensorFlow 实现 OCR