网页资讯视频图片知道文库贴吧地图采购
进入贴吧全吧搜索

 
 
 
日一二三四五六
       
       
       
       
       
       

签到排名:今日本吧第个签到,

本吧因你更精彩,明天继续来努力!

本吧签到人数:0

一键签到
成为超级会员,使用一键签到
一键签到
本月漏签0次!
0
成为超级会员,赠送8张补签卡
如何使用?
点击日历上漏签日期,即可进行补签。
连续签到:天  累计签到:天
0
超级会员单次开通12个月以上,赠送连续签到卡3张
使用连续签到卡
01月16日漏签0天
mathematica吧 关注:19,930贴子:74,238
  • 看贴

  • 图片

  • 吧主推荐

  • 游戏

  • 1 2 下一页 尾页
  • 73回复贴,共2页
  • ,跳到 页  
<<返回mathematica吧
>0< 加载中...

求教:欧拉计划第145,还只算到1亿就用了800多秒,该怎么做啊?

  • 只看楼主
  • 收藏

  • 回复
  • ucweb420
  • Function
    11
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼

完全是暴力求解,还是用的4核8G的台式机算的,不知道该怎么做


  • ucweb420
  • Function
    11
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
一些正整数n有这样一个性质:n与n取“相反”之和的所有位皆为奇数。例如: 36 + 63 = 99 以及 409 + 904 =
1313。我们将这样的数成为可反数;所以,36,63,409,904都是可反数。在n和n取相反的最前面都不允许有0。
一千以下共有120个可反数。
10亿(109)以下共有多少个可反数?


2026-01-16 14:34:18
广告
不感兴趣
开通SVIP免广告
  • ucweb420
  • Function
    11
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
Count[Range[100000000],x_/;(Mod[x,10]!=0&&And@@OddQ @IntegerDigits[x+FromDigits[Reverse[IntegerDigits[x]]]])]//Timing


  • feiliupkpk
  • 列表操作
    9
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
最无脑的加速就是并行了


  • 草红样
  • 小吧主
    9
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
我用的是旧笔记本电脑,台式机目测10几秒的事儿


  • situxuming
  • 小吧主
    11
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
4G台式机
我还是想想怎样从这些数字的特点来想想算法


  • feiliupkpk
  • 列表操作
    9
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
整理了下,不晓得对不对:
x为n位数,每一位数字为a(n)
1.n为偶数时,a(i)+a(n+1-i)<10&&OddQ
2.n为奇数时
2-1.i为奇数a(i)+a(n+1-i)>10&&OddQ&&正中的数字2a(mid)<10
2-2.i为偶数a(i)+a(n+1-i)<10&&EvenQ


  • ucweb420
  • Function
    11
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼

怎么会这样?我上午用Parallelize的确是显示75秒啊,难道是因为用的是Timing,所以不对?


2026-01-16 14:28:18
广告
不感兴趣
开通SVIP免广告
  • eyofdu
  • 慢慢研究
    12
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
Timing[mand = Compile[{{z0, _Complex}, {nmax, _Integer}}, Module[{z = z0, i = 1}, While[i < 100 && Abs[z] <= 2, z = z^2 + z0; i++]; i]]; ArrayPlot[ Reverse@Transpose@ Table[mand[x + y I, 500], {x, -2, 2, 0.001}, {y, -2, 2, 0.001}], ImageSize -> Full]]
算这个的同时怎么算1+1
是曼德勃罗集……


  • 草红样
  • 小吧主
    9
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼


  • 青衣瓦屋
  • 小吧主
    12
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
先找和数,再将和拆分为可反数,如两位数先找{11,33,……,99},再将其拆分(如99可拆分为18,27,……,81)。
沿着7楼思路继续往下,设a(n)a(n-1)...a1为n位可反数,其和为:(内积形式)
{a(n)+a1,a(n-1)+a2,...}.{10^(n-1)+1,10^(n-2)+10,...}
推理可知:
1:n为偶数时,每一个am+an都是不进位的奇数(也即是取值范围为Range[1,9,2]);
2:n为4K+3型数时,式中第一列表诸项取值范围为Range[11,17,2],Range[0,9]交替进行;
3:n为4K+1型数时无解。(所以,大家其实只需算到1亿……)
上代码:
Module[{dgts, idgts, list, listeven, listodd, count}, dgts[x_] := Min[x, 9] - Max[0, x - 9] + 1; idgts[x_] := If[3 <= x <= 17, Min[x - 1, 9] - Max[1, x - 9] + 1, 0]; listeven[n_] := Select[{Table[10^(n - 1 - i) + 10^i, {i, 0, (n - 1)/2}].#, n, #} & /@ Tuples[Range[1, 9, 2], Floor[(n + 1)/2]], And @@ OddQ /@ IntegerDigits[#[[1]]] &]; listodd[n_] := Select[{Table[10^(n - 1 - i) + 10^i, {i, 0, (n - 1)/2}].#, n, #} & /@ Tuples@Flatten[ Table[{Range[11, 17, 2], Range[0, 9]}, {i, Floor[(n + 1)/4]}], 1], And @@ OddQ /@ IntegerDigits[#[[1]]] &]; list[n_] := If[EvenQ@n, listeven[n], listodd[n]]; count[list_] := If[EvenQ@list[[2]], Times @@ Flatten[{idgts@list[[3, 1]], dgts /@ list[[3, 2 ;; -1]]}], Times @@ Flatten[{idgts@list[[3, 1]], dgts /@ list[[3, 2 ;; -2]]}] ]; Total[Total[count /@ list@#] & /@ Select[Range[4, 9], Mod[#, 4] != 1 &]] + 120 ] // Timing
如果被吞再看图片对照:


  • 青衣瓦屋
  • 小吧主
    12
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
顺路问下,第十四题大家是怎么做的?硬算的话1000都用了25秒,不敢算10^6了。个人感觉应该是要把之前每一步的计算结果利用起来以节省时间,但是没想好代码怎么写。谁给指点下?
原题:
以下迭代序列定义在整数集合上:
n -> n/2 (当n是偶数时)
n -> 3n + 1 (当n是奇数时)
应用以上规则,并且以数字13开始,我们得到以下序列:13 -> 40 -> 20 -> 10 -> 5 -> 16->8 -> 4 -> 2 -> 1
可以看出这个以13开始以1结束的序列包含10个项。虽然还没有被证明(Collatz问题),但是人们认为在这个规则下,以任何数字开始都会以1结束。以哪个不超过100万的数字开始,能给得到最长的序列?
注意: 一旦序列开始之后,也就是从第二项开始,项是可以超过100万的。


  • 0577216
  • 列表操作
    9
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
是不是倒过来算比较好:
从1开始,如果其mod3余1且大于4则减1除以3,不然乘以2


  • mm_酱
  • 刚刚会用
    10
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
14题,这个在我机子上15s。
Clear[foo];foo[1] = 1;foo[n_?OddQ] := foo[n] = 1 + foo[3 n + 1];foo[n_?EvenQ] := foo[n] = 1 + foo[n/2];Timing]]]


2026-01-16 14:22:18
广告
不感兴趣
开通SVIP免广告
  • mm_酱
  • 刚刚会用
    10
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼


登录百度账号

扫二维码下载贴吧客户端

下载贴吧APP
看高清直播、视频!
  • 贴吧页面意见反馈
  • 违规贴吧举报反馈通道
  • 贴吧违规信息处理公示
  • 1 2 下一页 尾页
  • 73回复贴,共2页
  • ,跳到 页  
<<返回mathematica吧
分享到:
©2026 Baidu贴吧协议|隐私政策|吧主制度|意见反馈|网络谣言警示