密码破译//不会啊啊

时间限制: 1000ms

空间限制: 65536kB

题目描述

现有一串加密过的号码,同时告诉你解密规则:首先将第1个数字删除,接着将第2个数字放到串的末尾,再将第3个数字删除并将第4个个数字放到串的末尾,如此反复,直到剩下最后一个数,将最后一个数删除,解密结束。这个过程中删除的数字连在一起就是破译的密码。

请按照这个规则破译一下给出的加密号码吧。

输入格式

输入一个数字字符串

输出格式

输出破译以后的密码。

样例

Input 1

145328796

Output 1

152763984

数据范围

字符串长度<=100

这不就是一道大模拟嘛

1 个赞

我想用对列解

没思路

对,就模拟,建议用vector

1 个赞

嗯,试试

把第一个元素出队,丢到vector里,第二个元素出队从队尾入队,一直循环到队空

2 个赞

先取begin,删除begin元素,放在数组中,再取begin,push_back一下,再删除begin

1 个赞

答案就是数组

1 个赞

addd

1 个赞


for(int i=0;i<s.length();i++){
p.push(q.front());
q.pop();
if(!q.empty()){
q.push(q.front());
q.pop();
这样也行

while(!v.empty()){
    //取begin元素
    //丢进数组里
    //删除begin元素
    //取begin元素
    //push_back(begin元素)
    //删除begin元素
}
1 个赞

image

@李政烨 提问请发到问题讨论区,发在常规的将会被删帖。