【2016.3.19】作业 分析一个很有(wu)趣(liao)的小程序
2016-03-19 18:06
465 查看
问题1:这个程序要找的是符合什么条件的数?
能够整除2-32中所有数仅除了在此之中的两个相邻的数,比如能整除2-29,且不能整除30,31。当然,这只是举个例子。
问题2:这样的数存在么?符合这一条件的最小的数是什么?
不知道是否存在,反正用z3735f跑了一个多小时没算出来,要算出来,估计得用超算。自己尝试算了一下2-15,2-20 都算出来了,但是再往后就费劲了。因为我不知道这个数在什么地方,因此假设他在整个搜索范围的前0.1%出现,我1.33GHZ双核的小电脑得跑好几百年。。。。so,怒扔,不算了,去网上找超算算去吧,我不算了。。。
问题3:在电脑上运行这一程序,你估计多长时间才能输出第一个结果?时间精确到分钟(电脑:单核CPU 4.0G Hz,内存和硬盘等资源充足)。
Int64是64位有符号数,正数部分为2^63,这个范围太大了,假设在范围千分之一的位置找到了这个数,也就是在9.2233720368548 × 1015处有这个数,假设机子每秒处理4.0X109步,退10000步说,假设一个时钟周期算一个数,那也需要2000000s,33333min。。。。这也太大了吧,还是去超算吧。。。。@天河二号,@AlphaGo。。。。。
问题4:在多核电脑上如何提高这一程序的运行效率?
分开算?我觉得现在超线程技术在流水线层面上已经做好了多核运算的东西,底层内核的事我们就不要操心了,另外我觉得这效率已经很高了,不需要提高,cpu使用率的70%以上都给了这个计算,导致UI非常卡顿,再提高电脑更卡顿了,如何愉快的玩耍?
能够整除2-32中所有数仅除了在此之中的两个相邻的数,比如能整除2-29,且不能整除30,31。当然,这只是举个例子。
问题2:这样的数存在么?符合这一条件的最小的数是什么?
不知道是否存在,反正用z3735f跑了一个多小时没算出来,要算出来,估计得用超算。自己尝试算了一下2-15,2-20 都算出来了,但是再往后就费劲了。因为我不知道这个数在什么地方,因此假设他在整个搜索范围的前0.1%出现,我1.33GHZ双核的小电脑得跑好几百年。。。。so,怒扔,不算了,去网上找超算算去吧,我不算了。。。
问题3:在电脑上运行这一程序,你估计多长时间才能输出第一个结果?时间精确到分钟(电脑:单核CPU 4.0G Hz,内存和硬盘等资源充足)。
Int64是64位有符号数,正数部分为2^63,这个范围太大了,假设在范围千分之一的位置找到了这个数,也就是在9.2233720368548 × 1015处有这个数,假设机子每秒处理4.0X109步,退10000步说,假设一个时钟周期算一个数,那也需要2000000s,33333min。。。。这也太大了吧,还是去超算吧。。。。@天河二号,@AlphaGo。。。。。
问题4:在多核电脑上如何提高这一程序的运行效率?
分开算?我觉得现在超线程技术在流水线层面上已经做好了多核运算的东西,底层内核的事我们就不要操心了,另外我觉得这效率已经很高了,不需要提高,cpu使用率的70%以上都给了这个计算,导致UI非常卡顿,再提高电脑更卡顿了,如何愉快的玩耍?
相关文章推荐
- 初始化微信企业号秘钥
- 微信jsApiPay支付踩过的坑
- 微信jsapi invalid signature错误
- QQ、微信、新浪等开放平台网址(申请接入)
- 阅读微信支付demo收获
- 微信红包实现原理[转]
- 微信支付类 demo
- 几个VBA的小程序示例
- Java微信公众平台开发(13) 微信JSSDK中Config配置
- 微信支付企业打款,获取用户信息
- 微信公众平台开发(111) 现金红包、裂变红包、企业付款
- Android--计算器小程序
- Discuss!X3.2 绑定微信
- 微信多客服
- 通过百度BAE搭建微信二次开发的服务(2)
- Android小程序-标准体重计算器
- 微信(WeChat web page)
- 微信(WeChat web page)
- 微信开发解决if...else..的臃肿
- 贪吃蛇的小程序