注册机编写大赛!
新来祝贺大家新年快乐下,为了提高论坛各位的CM水平!本人就自己掏腰包举办一个注册机大赛!题目为以下地址:http://www.52pojie.cn/thread-16081-1-1.html
霄斑竹的大作,已经有XIMO大师分析了.
评分标准:
1.先到先得;
2.能写出1~2位且能成功注册者,给以"热心参与者"奖发30吾爱币;
3.能写出3~4位的,给以"积极思考大奖"发50吾爱币;
4.能写出5位以上的,给以"天才工程师大奖"发100吾爱币;
5.外加语言特色评分,语言级别越高特色分也越高,由评审自行评定发币; :lol :lol sf :) :) :) :) :) :) :) 1
122398943015986624
验证:
(1*122398943015986624)/8*2+5=30599735753996656
30599735753996656-5=30599735753996651
30599735753996651*4=122398943015986624
122398943015986624 / 2 = 61199471507993312
61199471507993312 / 2 = 3059973573996656
3059973573996656 / 2 = 15299867876998328
15299867876998328 / 2 = 7649933938499164
四组注册码:
2
61199471507993312
4
3059973573996656
8
15299867876998328
16
7649933938499164
我的伪码穷举注册机:
BEGIN
SUM = 122398943015986624
FOR A=1; A++;A<=61199471507993311
B = SUM / A
IF (Bis integer)THEN
PRINT "USER:"A "PASSWORD:"B
END
[ 本帖最后由 zapline 于 2008-12-31 23:53 编辑 ] c语言的(在网吧,没条件测试)
#include <stdio.h>
void main()
{
int sum,a,b;
sum = 122398943015986624;
for(a=1;a++;a<=61199471507993311)
if (sum%a=0)
printf("user:%d,password:%d",a,b)
} 晕死啊,我刚刚学Delphi,所以写了个CM,而且是随意写了个。就被拿来做注册机编写大赛了。又不是什么牛牛CM,惭愧!Zapline大牛牛!膜拜。。。(*^__^*) 嘻嘻……。我的CM对你来说太菜了吧。 新年快乐!!! 原帖由 zapline 于 2008-12-31 23:56 发表 http://www.52pojie.cn/images/common/back.gif
c语言的(在网吧,没条件测试)
#include
void main()
{
int sum,a,b;
sum = 122398943015986624;
for(a=1;a++;a
貌似这样不行的吧:
int sum,a,b;
sum = 122398943015986624;
已经明显的溢出了,编译时自动截断转换,就已经不对了!运行起来又如何??
不知道有没有超出__int64或者long long的取值范围,又double可能在精度上有损失,
实在不行,就应该用大数库了,哈 Happy 牛 year......
。。。 :loveliness: :'(
我的有很大的缺陷
把浮点数完全排除在外了 原帖由 chenguo 于 2009-1-1 00:06 发表 http://www.52pojie.cn/images/common/back.gif
貌似这样不行的吧:
int sum,a,b;
sum = 122398943015986624;
已经明显的溢出了,编译时自动截断转换,就已经不对了!运行起来又如何??
不知道有没有超出__int64或者long long的取值范围,又double可能在 ...
呵呵 谢谢提醒!
unsigned long【int】无符号长整型 0~4294967295 也已经超过了
不知道怎么搞:'( 原帖由 zapline 于 2009-1-1 00:15 发表 http://www.52pojie.cn/images/common/back.gif
呵呵 谢谢提醒!
unsigned long【int】无符号长整型 0~4294967295 也已经超过了
不知道怎么搞:'(
unsigned long long 或者__int64
#define LLONG_MAX 9223372036854775807i64 /* maximum signed long long int value */
#define LLONG_MIN (-9223372036854775807i64 - 1)/* minimum signed long long int value */
#define ULLONG_MAX 0xffffffffffffffffui64 /* maximum unsigned long long int value */
/* minimum signed 64 bit value */
#define _I64_MIN (-9223372036854775807i64 - 1)
/* maximum signed 64 bit value */
#define _I64_MAX 9223372036854775807i64
/* maximum unsigned 64 bit value */
#define _UI64_MAX 0xffffffffffffffffui64