【学习记录】YSM解密QQ号

试题描述:

YSM 在年级里人缘特别好,大家都找他要 QQ 号,数学特别好的它有时也小卖弄一下,他把 QQ 号加密后告诉同学们,所以同学们要得到他的 QQ 号还得先解密。解密规则是这样的:首先将第一个数字删除,再讲第二个数字放到这串数的末尾,再将第 3 个数删除并将第 4 个数放到这串数的末尾,再将第5个数删除,........,以此类推,将最后一个数字也删除。按照刚才删除的顺序,把这些删除的数字连在一起,最后的 7 位就是 YSM 的 QQ 号。当然解密后的数字串肯定不止 7 位,不到 100 位。

输入:

一行,包含符合题目描述的一个数字串,表示加密后的 QQ 号码。

输出:

一个七位的数字串,表示 YSM 的 QQ 号。

输入示例:

631758924

输出示例:

5947283

这题是老师出给我的。。。当时就跪了。。。

现在看起来好水

第一眼看上去就是一道队列的题,建2个队列就行了。

代码实现:

#include<iostream>
#include<string>
#include<queue>
#include<cstring>
using namespace std;
queue <char> Q;
string a;
int k;
char ans[100000];
int main()
{
    cin>>a;
    int len=a.length();//测长
    for(int i=0;i<len;i++)Q.push(a[i]);//将数扔到队列中
    while(Q.size()>0)
    {
        ans[k]=Q.front();//将当前的第一个数扔到结果数组中
        k++;//标识符+1
        Q.pop();//弹出这个数
        Q.push(Q.front());//将下一个数扔到队列最后
        Q.pop();//弹出这个数
    }
    int str=strlen(ans);
    for(int i=str-7;i<str;i++)cout<<ans[i];//输出最后7位
    return 0;
}

希望大家继续关注我

时间: 2024-10-01 07:14:08

【学习记录】YSM解密QQ号的相关文章

队列——解密QQ号

新学期开始了,小哈是小哼的新同桌(小哈是个小美女哦~),小哼向小哈询问QQ号,小哈当然不会直接告诉小哼啦,原因嘛你懂的.所以小哈给了小哼一串加密过的数字,同时小哈也告诉了小哼解密规则.规则是这样的:首先将第1个数删除,紧接着将第2个数放到这串数的末尾,再将第3个数删除并将第4个数再放到这串数的末尾,再将第5个数删除……直到剩下最后一个数,将最后一个数也删除.按照刚才删除的顺序,把这些删除的数连在一起就是小哈的QQ啦.现在你来帮帮小哼吧.小哈给小哼加密过的一串数是“6 3 1 7 5 8 9 2

队列浅析[解密QQ号]

题目: 新学期开始了,小哈是小哼的新同桌(小哈是个小美女哦~),小哼向小哈询问QQ号,小哈当然不会直接告诉小哼啦,原因嘛你懂的.所以小哈给了小哼一串加密过的数字,同时小哈也告诉了小哼解密规则.规则是这样的:首先将第1个数删除,紧接着将第2个数放到这串数的末尾,再将第3个数删除并将第4个数放到这串数的末尾,再将第5个数删除--直到剩下最后一个数,将最后一个数也删除.按照刚才删除的顺序,把这些删除的数连在一起就是小哈的QQ啦.现在你来帮帮小哼吧.小哈给小哼加密过的一串数是"6 3 1 7 5 8 9

啊哈!算法:解密QQ号

书中给出的算法有点浪费空间,可以使用循环队列进行改进,这样就不需要使用额外的空间,在原数组的基础上就可以完成解密,代码如下: 1 #include <stdio.h> 2 3 void decode(int a[], int size) 4 { 5 int head = 0, tail = size;//tail point to next position to be written 6 7 while (head != tail){ 8 //删除队首元素 9 printf("%2

解密QQ 号——队列

一.问题描述 有一种对一列数字的加密方式,解密规则如下:首先将加密后数字中的第1个数删除,紧接着将第2个数放到这串数的末尾,再将第3个数删除并将第4个数放到这串数的末尾,再将第5个数删除……直到剩下最后一个数,将最后一个数也删除.按照刚才删除的顺序,把这些删除的数连在一起就是原本的数字排列. 例如加密过的一串数是“6 3 1 7 5 8 9 2 4”.解密的过程就像是将这些数“排队”.每次从最前面拿两个,第1个扔掉,第2个放到尾部.具体过程是这样的:刚开始这串数是“6 3 1 7 5 8 9 2

纪勇破解QQ号问题

试题描述 来到了新学校,才相处不到一个月,jy就对oyjy一见钟情.于是向oyjy问QQ号.当然身为创(实)新(验)一班的同学,oyjy还是要考考jy.她给了纪勇一个加密后的QQ号,让纪勇解密,解密规则是这样的:首先将第一个数字删除,再将第二个数字放到这串数的末尾,再将第 3 个数删除并将第 4 个数放到这串数的末尾,再将第5个数删除,........,以此类推,将最后一个数字也删除.按照刚才删除的顺序,把这些删除的数字连在一起,最后的 7 位就是 oyjy 的 QQ 号.当然解密后的数字串肯定

解密QQ——队列

问题引入 小明和小丽同在一个自习室上自习,小明感觉小丽是一个很不错的女孩,于是他鼓足勇气向小丽要QQ号,然而小丽也是个矜持的女孩,当然不会直接告诉他,所以小丽给了小明一串加密过的数字,同时她也告诉小明解密规则:首先将第一个数删除,紧接着将第2个数放到这串数的末尾,再将第3个数删除并将第4个数放到这串数的末尾,以此类推...直到剩下最后一个数,将最后一个数也删除.按照刚才删除的顺序,把这些删除的数连在一起就是小丽的QQ号了.加密过的一串数字为"6 3 1 7 5 8 9 2 4". 注:

Auto Hotkey 脚本学习记录 —— 热键与热字符串

参考文档: AutoHotkey 0级入门教程:让重复工作一键完成 (2011-10-24修订) AutoHotkey:帮助win run更方便 AutoHotkey|脚本:用Irfanview把24位真彩图片优化到实际色深 AutoHotkey 学习指南(最近更新: 2012-03-09) AHK 是一个叫 AutoHotKey 的软件的缩写,可以实现很多有趣的功能,可以简化你的重复性工作.比如修改系统快捷键.模拟鼠标键盘按键的按下--我们先来对付一下这些 IT 名词,它们会在后面的教程中经常

Python学习记录day6

Python学习记录day6 学习 python Python学习记录day6 1.反射 2.常用模块 2.1 sys 2.2 os 2.3 hashlib 2.3 re 1.反射 反射:利用字符串的形式去对象(默认)中操作(寻找)成员 cat commons.py #!/usr/bin/env python#_*_coding:utf-8_*_''' * Created on 2016/12/3 21:54. * @author: Chinge_Yang.''' def login(): pr

盗qq号软件下载

盗qq号软件下载●●高手QQ:705099868●●以前也在网上找过关于以及怎么破解qq聊天记录密码视频,但是都没有找到好的怎么破解qq聊天记录密码方法.无意中接触到这个人,他是专门帮人查QQ密码,微信密码,查QQ聊天记录,恢复微信记录,通话记录,短信,手机定位等,很讲信誉,技术不错. http://www.155588.com