using System;
// Thanks to:
// http://b...content-available-to-author-only...x.net/2013/08/deterministic-miller-rabin-primality.html
// https://g...content-available-to-author-only...b.com/softwx/SoftWx.Numerics
namespace ConsoleApp1
{
// Найдите все натуральные n ∈ (0..1000), такие что 2ⁿ - n кратно 7.
// Find all natural numbers n ∈ (0..1000) such that 2ⁿ - n is a multiple of 7.
class Program
{
// эта функция возвращает value ^ exponent % modulus
static uint ModPow(uint value, uint exponent, ushort modulus)
{
uint result = 1;
if ((exponent & 1) != 0) result = value;
while ((exponent /= 2) != 0)
{
value = value * value % modulus;
if ((exponent & 1) != 0)
result = result * value % modulus;
}
return result;
}
static void Main()
{
for (uint i = 1; i < 1000; ++i)
if (ModPow(2, i, 7) == i % 7)
Console.Write(i + "\t");
// Console.ReadKey(true);
}
}
}
dXNpbmcgU3lzdGVtOwovLyBUaGFua3MgdG86Ci8vIGh0dHA6Ly9iLi4uY29udGVudC1hdmFpbGFibGUtdG8tYXV0aG9yLW9ubHkuLi54Lm5ldC8yMDEzLzA4L2RldGVybWluaXN0aWMtbWlsbGVyLXJhYmluLXByaW1hbGl0eS5odG1sCi8vIGh0dHBzOi8vZy4uLmNvbnRlbnQtYXZhaWxhYmxlLXRvLWF1dGhvci1vbmx5Li4uYi5jb20vc29mdHd4L1NvZnRXeC5OdW1lcmljcwoKbmFtZXNwYWNlIENvbnNvbGVBcHAxCnsKLy8g0J3QsNC50LTQuNGC0LUg0LLRgdC1INC90LDRgtGD0YDQsNC70YzQvdGL0LUgbiDiiIggKDAuLjEwMDApLCDRgtCw0LrQuNC1INGH0YLQviAy4oG/IC0gbiDQutGA0LDRgtC90L4gNy4KLy8gRmluZCBhbGwgbmF0dXJhbCBudW1iZXJzIG4g4oiIICgwLi4xMDAwKSBzdWNoIHRoYXQgMuKBvyAtIG4gaXMgYSBtdWx0aXBsZSBvZiA3LgoJY2xhc3MgUHJvZ3JhbQoJewoJCS8vINGN0YLQsCDRhNGD0L3QutGG0LjRjyDQstC+0LfQstGA0LDRidCw0LXRgiB2YWx1ZSBeIGV4cG9uZW50ICUgbW9kdWx1cwoJCXN0YXRpYyB1aW50IE1vZFBvdyh1aW50IHZhbHVlLCB1aW50IGV4cG9uZW50LCB1c2hvcnQgbW9kdWx1cykKCQl7CgkJCXVpbnQgcmVzdWx0ID0gMTsKCQkJaWYgKChleHBvbmVudCAmIDEpICE9IDApIHJlc3VsdCA9IHZhbHVlOwoJCQl3aGlsZSAoKGV4cG9uZW50IC89IDIpICE9IDApCgkJCXsKCQkJCXZhbHVlID0gdmFsdWUgKiB2YWx1ZSAlIG1vZHVsdXM7CgkJCQlpZiAoKGV4cG9uZW50ICYgMSkgIT0gMCkKCQkJCQlyZXN1bHQgPSByZXN1bHQgKiB2YWx1ZSAlIG1vZHVsdXM7CgkJCX0KCQkJcmV0dXJuIHJlc3VsdDsKCQl9CgoJCXN0YXRpYyB2b2lkIE1haW4oKQoJCXsKCQkJZm9yICh1aW50IGkgPSAxOyBpIDwgMTAwMDsgKytpKQoJCQkJaWYgKE1vZFBvdygyLCBpLCA3KSA9PSBpICUgNykKCQkJCQlDb25zb2xlLldyaXRlKGkgKyAiXHQiKTsKCQkJLy8gQ29uc29sZS5SZWFkS2V5KHRydWUpOwoJCX0KCX0KfQo=