using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
// 로또 1등이 얼마나 어려운지 실험
namespace LottoTest
{
class Program
{
static Random random = new Random();
static int[] Lotto()
{
var r = new int[45];
for (int i = 0; i < 45; i++)
{
r[i] = i + 1;
}
for (int i = 0; i < 6; i++)
{
int c = r[i];
int p = random.Next(r.Length);
r[i] = r[p];
r[p] = c;
}
return r.Take(6).OrderBy(x => x).ToArray();
}
static void Main(string[] args)
{
var i = 0;
var first = Lotto();
while (true)
{
i++;
var r = Lotto();
if (i % 100000 == 0) Console.WriteLine(i);
if (r.SequenceEqual(first)) break;
}
Console.WriteLine(i);
Console.WriteLine("Invested capital: {0:N0} won", i * 1000L);
Console.WriteLine(string.Join(" ", first));
Console.WriteLine("Press any key.");
Console.ReadKey();
}
}
}
'Programming' 카테고리의 다른 글
Python virtualenv 정리 (Linux/Windows) (0) | 2018.12.10 |
---|---|
Small String Optimization and Move Operations (0) | 2018.08.17 |
[curl] 윈도우 환경에서 라이브러리 빌드 및 설치 (0) | 2018.07.04 |
Mark-and-Sweep: Garbage Collection Algorithm (0) | 2018.06.28 |
(C#) Console.ReadLine은 254자까지만 읽을 수 있다. (0) | 2018.05.10 |