目录
引言
是这样子滴
解决办法
说点啥
首页 后端开发 php教程 找女神要QQ号码

找女神要QQ号码

Aug 08, 2016 am 09:22 AM
head quot raw

引言

我们组来了个美女程序员,我心里窃喜,哈哈这下机会来了。我在想怎么下手呢?好吧,还是从QQ号码开始,找到女神要到QQ号,哈哈,我真是个天才~~~

是这样子滴

想法是美好的,现实是残酷的,找女神要QQ号码的时候,没想到女神没有直接给我,而是给了我出了道题(果真是程序员的交手~~ ~),题都给我了,做不出来的话,不但没了和女神的接触机会,连赖以为生的基本技能——编程能力都被质疑了~~~题目是这样的:

<code>给了一串数字(不是QQ号码),根据下面规则可以找出QQ号码:首先删除第一个数,紧接着将第二个数放到这串数字的末尾,再将第三个数删除,并将第四个数放到这串数字的末尾......如此循环,知道剩下最后一个数,将最后一个数也删除,按照刚才删除的顺序,把这些数字连在一起就是女神的QQ号码啦。</code>
登录后复制

找女神要QQ号码

就是这样,女神给了一串数字631758924,现在要做的就是从这个数字中找出女神的QQ号码了,方法有很多种,比如说用9张卡片分别写上这9个数字,模拟题目的过程,可以算出来,也可以用笔一个一个的去算~~~~

这些方法都太low了,显示不出程序员的能力,还是写个程序比较酷一点(其实我是在想,要是下次再遇到一个女神出这样的题目,程序就很方便了,哈哈~~~)

解决办法

第一种方法,采用数学的方法,根据题目的规律,循环下面的操作:取整=>取余=>取余*10+取整。。。。。取余取整的对象都是10的倍数,根据位数而定,每次取整之后就是一位,循环直到数字等于0。

<code><?php $raw_num = 631758924;
$num = 0;
$devisor = 1;
while($devisor < $raw_num)
{
	$devisor *= 10;		//获取最小的大于raw_num的10的倍数的整数
}

while ($raw_num > 0) {
	$devisor /= 10;
	$next = floor($raw_num / $devisor);	//获取下一个数字
	$num = $num*10 + $next;				//计算”半成品“QQ号码
	$raw_num = $raw_num % $devisor;
	$last = floor($raw_num * 10 / $devisor);	//移动数字,拼接最新的QQ号码

	$pre = $raw_num % (ceil($devisor / 10));

	$raw_num = $pre * 10 + $last;	
}
echo "恭喜你啦,成功获取QQ号码:{$num}";	//恭喜你啦,成功获取QQ号码:615947283</code>
登录后复制

利用队列的FIFO获取QQ号码,根据题目的特性,刚好可以使用队列来处理,队列简单方便,而且更好理解。

<code>#include<stdio.h>
struct queue {
	int *data;
	int head;
	int tail;
}; 
int main()
{
	int num, i;
	printf("请输出要破译的QQ号码长度:");
	scanf("%d", &num);
	
	struct queue q;
	q.data = (int *)malloc(sizeof(int)*(num*2-1));	//总共需要的数组长度为num*2-1 
	q.head = 0;
	q.tail = 0;
	
	for(i=1;i</stdio.h></code>
登录后复制

说点啥

本文点子来自《啊哈!算法》中的第二章,第一节【解密QQ号——队列】,唯一的插图也截取自本书。


微信号: love_skills

越努力,越幸运!越幸运,越努力!

做上CEO不是梦

赢取白富美不是梦

屌丝逆袭不是梦

就是现在!!加油
找女神要QQ号码

以上就介绍了找女神要QQ号码,包括了方面的内容,希望对PHP教程有兴趣的朋友有所帮助。

本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

Video Face Swap

Video Face Swap

使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热工具

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

chkdsk无法供raw驱动器使用怎么办 chkdsk无法供raw驱动器使用怎么办 Mar 06, 2023 pm 03:27 PM

chkdsk无法供raw驱动器使用的解决办法:1、右键底部任务栏Win图标,在弹出的菜单栏中点击“运行”选项;2、在命令行窗口输入“chkdsk /?”,然后点击回车键确定;3、等待chkdsk工具成功运行即可。

html5标签head和header有什么区别 html5标签head和header有什么区别 Jan 17, 2022 am 11:10 AM

区别:1、head标签用于定义文档头部,它是所有头部元素的容器,而header标签用于定义文档的页眉(介绍信息);2、浏览器都支持head标签,而旧版本浏览器均不支持header标签,需要IE9+以上浏览器才支持header标签。

php提交表单通过后,弹出的对话框怎样在当前页弹出,该如何解决 php提交表单通过后,弹出的对话框怎样在当前页弹出,该如何解决 Jun 13, 2016 am 10:23 AM

php提交表单通过后,弹出的对话框怎样在当前页弹出php提交表单通过后,弹出的对话框怎样在当前页弹出而不是在空白页弹出?想实现这样的效果:而不是空白页弹出:------解决方案--------------------如果你的验证用PHP在后端,那么就用Ajax;仅供参考:HTML code

Laravel中Head请求方法的常见应用场景 Laravel中Head请求方法的常见应用场景 Mar 06, 2024 pm 09:33 PM

Laravel中Head请求方法的常见应用场景在Laravel中,HTTP请求方法中的HEAD方法通常被用于获取资源的元数据而不获取实际的内容。HEAD请求和GET请求类似,但是不返回实际的响应主体内容,只返回响应头信息。这使得HEAD请求在一些特定的场景下非常有用,以下是一些常见的应用场景和相应的代码示例。验证链接的有效性使用HEAD请求方法可以用于验证链

linux raw是什么格式 linux raw是什么格式 Mar 14, 2023 am 09:33 AM

linux raw是原始数据格式,在linux中表示“裸设备”,也叫裸分区、原始分区;linux raw是一种没有经过格式化,不被Unix/Linux通过文件系统来读取的特殊字符设备;裸设备可以绑定一个分区,也可以绑定一个磁盘。

raw是什么格式 raw是什么格式 Feb 01, 2023 pm 01:43 PM

RAW是未经处理、也未经压缩的格式,可以把RAW概念化为“原始图像编码数据”或更形象的称为“数字底片”。RAW格式文件是一种记录了数码相机传感器的原始信息,同时记录了由相机拍摄所产生的一些元数据(Metadata,如ISO的设置、快门速度、光圈值、白平衡等)的文件。

raw照片是什么意思 raw照片是什么意思 Jan 12, 2021 am 11:05 AM

raw照片是指未经处理、也未经压缩的照片格式;因为raw的原意就是“未经加工”,可以理解为“RAW图像就是CMOS或者CCD图像感应器将捕捉到的光源信号转化为数字信号的原始数据”。

raw格式和jpg格式有什么区别 raw格式和jpg格式有什么区别 Aug 10, 2023 pm 03:31 PM

raw格式和jpg格式区别有:1、JPEG是一种被广泛使用的有损压缩格式,而RAW格式是一种无损的图像格式;2、JPEG格式的图像文件小巧,而RAW格式的文件较大;3、JPEG格式的图像只能进行有限的后期处理,而RAW格式的图像保留了更多的细节和色彩信息,使您能够在后期处理中做出更多的调整。

See all articles