返回列表 发帖

[原创代码] 欧啦计划第七题10001st prime

本帖最后由 codegay 于 2016-4-6 07:25 编辑

欧啦计划第七题10001st prime
#="""
julia解欧啦计划第七题10001st prime
https://projecteuler.net/problem=7
2016年4月6日 05:59:30 codegay
"""=#
result=[]
for r in countfrom(3,2)
if isprime(r)
append!(result,[r])
if length(result)==10000
println(r)
break
end
end
end
#104743
#[Finished in 4.4s]COPY
windows 版julia启动速度慢,3.2-4秒左右。拖慢了时间。
如果对julia熟悉的话,应该是可以写成一行。
去学去写去用才有进步。安装python3代码存为xx.py 双击运行或右键用IDLE打开按F5运行

欧拉计划 | Project Euler 中文翻译站

http://pe.spiritzhang.com/
去学去写去用才有进步。安装python3代码存为xx.py 双击运行或右键用IDLE打开按F5运行

TOP

本帖最后由 codegay 于 2016-4-6 09:28 编辑

欧拉计划 | Project Euler 中文翻译站 git

https://github.com/PE-CN/PE-CN.github.io

上面贴的旧站估计是不更新了。新站转到PE-CN.github.io
但是github很多资源被墙,可能也快要打不开了。

图灵的专栏,一年没有解题进度了。http://www.ituring.com.cn/minibook/10665
1

评分人数

去学去写去用才有进步。安装python3代码存为xx.py 双击运行或右键用IDLE打开按F5运行

TOP

纠正一下。实际上我的数学知识都忘记光了。解题的都是要百度数学概念的。算不喜欢以及爱好者。

我最近确实喜欢用程序来解数学题,解题中能把学的东西用上,也能为解决问题去查资料学东西。
去学去写去用才有进步。安装python3代码存为xx.py 双击运行或右键用IDLE打开按F5运行

TOP

回复 4# codegay
julia在数值计算,绘图方面的优势很大,只是安装包体积太大。希望日后能出精简版。

TOP

回复 5# happy886rr


julia使用git作为库的更新源。里面带了一套git程序,好像还有一套编译器。安装体积加倍了。
这些是构成能让julia正常工作的一部分,至少短期内官方不会分出精力来搞精简版。

安装包不过几十M。OFFICE也至少几百M。这个问题对我来说没有心理障碍。

julia windows版在SSD硬盘的情况下启动至少需要3秒,这个才是我没法忍的。
去学去写去用才有进步。安装python3代码存为xx.py 双击运行或右键用IDLE打开按F5运行

TOP

本帖最后由 codegay 于 2016-4-7 04:39 编辑
#="""
#方法二
julia解欧啦计划第七题10001st prime
https://projecteuler.net/problem=7
2016年4月7日 00:23:25 codegay
"""=#
#julia primes([start,]end)函数,默认会生成小于等于end的素数数组
#-_-只要end够大一定能包含第10001个素数...但是end太大的话会把内存吃光。
counter=0
for r in primes(99999999)
counter+=1
if counter==10001
println(r)
break
end
end
#104743
#[Finished in 3.9s]
#primes(99999999)[10001] 可以这样一行流
println(@time primes(99999999)[10001])COPY
去学去写去用才有进步。安装python3代码存为xx.py 双击运行或右键用IDLE打开按F5运行

TOP

julia 一行流
collect(take(filter(isprime,countfrom(3,2)),10000))[end]COPY
去学去写去用才有进步。安装python3代码存为xx.py 双击运行或右键用IDLE打开按F5运行

TOP

本帖最后由 happy886rr 于 2016-4-8 15:25 编辑

回复 8# codegay
/*
TinyC script混编
move %0 "%~0.c"&cls&@tcc\tcc.exe -run "%~0.c"&rename "%~0.c" "%~nx0"
*/
#include<stdio.h>
main()
{
int i,j,sum=0;
for(i=1;i<=2000000000;i+=2){
for(j=3;j*j<=i;j+=2){
if(i%j==0) break;
}
    if(j*j>i) sum++;
if(sum==10001) break;
}
printf("Problem7 -Project Euler\n");
printf(" * The 10001st prime number is “%d”\n",i);
getchar();
}COPY
1

评分人数

TOP

本帖最后由 codegay 于 2016-4-7 22:54 编辑

回复 9# happy886rr


    我操太好用了!
只是我这里编译后运行,乱码
Problem7 -Project Euler
* The 10001st prime number is 鈥?04743鈥?COPY
你那里正常?
win 7x64
去学去写去用才有进步。安装python3代码存为xx.py 双击运行或右键用IDLE打开按F5运行

TOP

回复 10# codegay
而且批处理代码和C代码融合的很好,相互可以调用和传递参数,基于的第三方C解释器tcc精简版才100多kb,运行非常迅捷。

TOP

回复 11# happy886rr


    我知道啊。
但是本质也是需要编译过的。
TCC就是编译器嘛。
去学去写去用才有进步。安装python3代码存为xx.py 双击运行或右键用IDLE打开按F5运行

TOP

乱码问题解决了。存为ANSI编码了。
去学去写去用才有进步。安装python3代码存为xx.py 双击运行或右键用IDLE打开按F5运行

TOP

回复 13# codegay
tcc有个-run参数。我利用这个参数直接当脚本运行。也没发现tcc产生临时文件。tcc的官网也说它直接就支持不编译而运行,估计是读到内存里了。

TOP

我还得跟你解释
我会gt tcc 。。一行命令把tcc下载下来
会存为xx.bat运行。。。
去学去写去用才有进步。安装python3代码存为xx.py 双击运行或右键用IDLE打开按F5运行

TOP

返回列表