|
|

楼主 |
发表于 17-3-2009 02:18 AM
|
显示全部楼层
有甚麼線索看得出我是MMU的喔?
 |
|
|
|
|
|
|
|
|
|
|
发表于 17-3-2009 10:24 AM
|
显示全部楼层
回复 61# Squall_Chua 的帖子
呵呵
你只管答对还是错  |
|
|
|
|
|
|
|
|
|
|
发表于 17-3-2009 11:49 AM
|
显示全部楼层
回复 62# faiko 的帖子
[[[ 割除 ]]]]
[ 本帖最后由 晨天 于 17-3-2009 11:59 AM 编辑 ] |
|
|
|
|
|
|
|
|
|
|
发表于 17-3-2009 03:56 PM
|
显示全部楼层
学 LINQ 时看到的,Project Euler 的第十题,在两百万以下:
public class Problem10
{
public long Solve()
{
var firstPrimes = new long[] { 2, 3, 5, 7, 11 };
var primes = firstPrimes.Unfold(priorPrimes =>
priorPrimes.Last()
.OddNumbersGreaterThan()
.SkipWhile(
candidate => priorPrimes
.TakeWhile(prime => prime * prime <= candidate)
.Any(prime => candidate.IsDivisibleBy(prime)))
.First()
);
var sum = primes.TakeWhile(prime => prime < 2000000).Sum();
return sum;
}
}
需要这三个 extension methods:
public static IEnumerable<long> OddNumbersGreaterThan(this long prime)
{
return (prime + 2).Unfold(item => item + 2);
}
public static IEnumerable<T> Unfold<T>(this IList<T> seedList, Func<IList<T>, T> generator)
{
List<T> previousItems = new List<T>(seedList);
// enumerate all the items in the seed list
foreach (T item in seedList)
{
yield return item;
}
// now extend the list
while (true)
{
T newItem = generator(previousItems);
previousItems.Add(newItem);
yield return newItem;
}
}
public static IEnumerable<T> Unfold<T>(this T seed, Func<T, T> generator)
{
// include seed in the sequence
yield return seed;
T current = seed;
// now continue the sequence
while (true)
{
current = generator(current);
yield return current;
}
}
基本上先用一个 prime number list,在拿最大的号码+2,然后用回prime list里面的号码拿来除:
.TakeWhile(prime => prime * prime <= candidate)
.Any(prime => candidate.IsDivisibleBy(prime)))
大概用三秒多算出总和。
二十万的话大概零点二秒。
http://blog.functionalfun.net/20 ... oblem-7-and-10.html |
|
|
|
|
|
|
|
|
|
|

楼主 |
发表于 17-3-2009 06:33 PM
|
显示全部楼层
|
|
|
|
|
|
|
|
|
|

楼主 |
发表于 17-3-2009 07:09 PM
|
显示全部楼层
回复 62# faiko 的帖子
我可以選擇表回答嗎?
 |
|
|
|
|
|
|
|
|
|
|
发表于 17-3-2009 10:33 PM
|
显示全部楼层
|
|
|
|
|
|
|
|
|
|
发表于 17-3-2009 11:37 PM
|
显示全部楼层
|
|
|
|
|
|
|
|
|
|

楼主 |
发表于 17-3-2009 11:45 PM
|
显示全部楼层
回复 67# faiko 的帖子
那麼好猜的話
買馬票不是很好賺?
 |
|
|
|
|
|
|
|
|
|
|

楼主 |
发表于 17-3-2009 11:46 PM
|
显示全部楼层
|
|
|
|
|
|
|
|
|
|
发表于 17-3-2009 11:51 PM
|
显示全部楼层
回复 70# Squall_Chua 的帖子
你的 resume 有你的detail la。。。。。。
吓吓你的啦。。。 我怎样会看到你的resume 了。。。 |
|
|
|
|
|
|
|
|
|
|

楼主 |
发表于 17-3-2009 11:58 PM
|
显示全部楼层
回复 71# 晨天 的帖子
車
表亂嚇我
我會怕的
 |
|
|
|
|
|
|
|
|
|
|
发表于 18-3-2009 12:03 AM
|
显示全部楼层
|
|
|
|
|
|
|
|
|
|
发表于 18-3-2009 12:12 AM
|
显示全部楼层
|
|
|
|
|
|
|
|
|
|
发表于 18-3-2009 12:13 AM
|
显示全部楼层
|
|
|
|
|
|
|
|
|
|

楼主 |
发表于 18-3-2009 12:38 AM
|
显示全部楼层
回复 74# 晨天 的帖子
你也很厲害翻一下
 |
|
|
|
|
|
|
|
|
|
|
发表于 19-3-2009 10:06 PM
|
显示全部楼层
原帖由 碎梦阁阁主 于 17-3-2009 03:56 PM 发表 
学 LINQ 时看到的,Project Euler 的第十题,在两百万以下:
public class Problem10
{
public long Solve()
{
var firstPrimes = new long[] { 2, 3, 5, 7, 11 };
...
又要做功课了。。
有几个 syntax 没学过。。
faiko 和 Squall_Chua
有什么宝贵的建议给我们这写 "后生仔" 的。。。。
我怕我迷路了。。。。 |
|
|
|
|
|
|
|
|
|
|
发表于 24-3-2009 10:52 AM
|
显示全部楼层
|
|
|
|
|
|
|
|
| |
本周最热论坛帖子
|