这两天在想一个算法,想了不少时间
来源:互联网 发布:dev c 编程 编辑:程序博客网 时间:2024/04/23 22:15
算法内容:
条件1:第1个数为只能0-999
第2个数为只能0-99
第3个数为12位数字。(不限)
条件2:将第一个数X第二个数X第三个数结果要等为15-17位数(只能15-17位):
其中计算出来的要求如下:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
0-4 0-9 0-4 0-9 0-4 0-9 0-4 0-9 0-4 0-9 0 这后面的不限定
注:11位那里一定是为0;
我发几组数上来给你们看一下,看有没有什么规律.
第一组/ 539 X 05 X 448330995919 = 1208252034 001705 (16位)
第二组/ 205 X 34 X 488258384792 = 3403160942 000240 (16位)
第三组/ 946 X 42 X 909657315263 = 3614250445 0029516 (17位)
第四组/ 456 X 45 X 165811975293 = 3402461733 012360 (16位)
第五组/ 486 X 33 X 170099204764 = 2728051046 005032 (16位)
第六组/ 092 X 15 X 103046493406 = 1422041609 00280 (15位)
看到没,每组结果的13579位都不能大于4,第十一位必须是0.
因为1000 X 100 X 1000000000000 = 1E+18 (3+2+12+1=18) 所以最大值为不会超过18位
假设A、B、C三个数,C1为C的第1位数字,C2为C的第2位数字,C12为C的第1和2位数字,C13为C的第1、2和3位数字,依次类推。
问题分成:
1、使数不小于15位;
S=A*B*C13
S>100000
2、第13579位都不大于4;
(1)第1位小于4;
若0<S1<=4 则成立。
(2)第3位小于4;
(3)第5位小于4;
(4)第7位小于4;
(5)第9位小于4;
3、第11位为0;
其实这是一个数字相乘题的分析,若要两个数字相乘,有一定的规律,可用递归来思考。
- 这两天在想一个算法,想了不少时间
- 这两天进步了不少哦
- 用了两天时间,搞定了一个小作品
- 这两天在想一些事情
- 写了两天这玩意有点舍不得时间
- 这两天做了一个挻有意思的试验
- 这两天在发呆
- 想了两天,终于把堆排序搞懂了。
- 这两天时间安排身不由己
- mssql存储过程转为mysql 的一些细节, 浪费了不少时间,在此做下记录
- 被一个低级错误折磨了两天
- 困扰了我两天的一个exception
- 两天光头,来了一个。迅速离开,
- 这两天更无聊了
- 软件时间花了不少,效率不是很高!
- 好久没有来这了,毕业两个月了。完了一个月,又歇了半个月,遇到不少事!
- 这两天都忘了写了,养成一个习惯真不容易
- 花了两天时间,写了个lex
- GTK下的扫雷程序
- 要找工作了……
- C++基本算法收集及代码实现
- date命令
- DataTable导出到Excel数据
- 这两天在想一个算法,想了不少时间
- FCKeditor2.6.3的一些其他设置
- ASP.NET ViewState 初探
- Delphi自定义组件(1)
- (转载)使用 Windows XP 的外观风格
- Oracle批量插入日期
- 关于DataList的DataKeyField 属性
- 好样的,猪猪~~
- Delphi 组件编写--扑克牌组件