-
Notifications
You must be signed in to change notification settings - Fork 4
/
Copy pathProgram.cs
40 lines (31 loc) · 1.16 KB
/
Program.cs
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
using System;
using System.Collections.Generic;
namespace Modified_Kaprekar_Numbers {
class Program {
static string KaprekarNumbers(int p, int q) {
List<int> kaprekarNumbers = new List<int>();
for (; p <= q; p++) {
int digitCount = p.ToString().Length;
string square = ((long)p * (long)p).ToString();
long r = long.Parse(square.Substring(square.Length - digitCount));
long l = 0;
if (square.Length - digitCount > 0) {
l = long.Parse(square.Substring(0, square.Length - digitCount));
}
if (r + l == p) {
kaprekarNumbers.Add(p);
}
}
if (kaprekarNumbers.Count > 0) {
return string.Join(" ", kaprekarNumbers);
} else {
return "INVALID RANGE";
}
}
static void Main(string[] args) {
int p = Convert.ToInt32(Console.ReadLine().Trim());
int q = Convert.ToInt32(Console.ReadLine().Trim());
Console.WriteLine(KaprekarNumbers(p, q));
}
}
}