Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- static void Problem26() {
- DateTime start = DateTime.Now;
- int numLongestRecurring = 1;
- int cycle = 0;
- for (int i = 1; i < 1000; i++) {
- int power = 1, lam = 1;
- int tortoise = 1 / i;
- int tortoiseRem = (1 % i) * 10;
- int hare = tortoiseRem / i;
- int hareRem = (tortoiseRem % i) * 10;
- while (tortoise != hare || tortoiseRem != hareRem) {
- if (power == lam) {
- tortoise = hare;
- tortoiseRem = hareRem;
- power *= 2;
- lam = 0;
- }
- hare = hareRem / i;
- hareRem = (hareRem % i) * 10;
- lam++;
- }
- if (lam > cycle) {
- cycle = lam;
- numLongestRecurring = i;
- }
- }
- Console.WriteLine("Number with longest recurring cycle: {0}\nCycle Length: {1}", numLongestRecurring, cycle);
- Console.WriteLine((DateTime.Now - start).TotalMilliseconds + " ms");
- Console.ReadLine();
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement