Website Summary Files Commits Branches @commit @diff @stats
path: root / Sem. 03 / Tasks and Solutions / 08. DuplicateDigits.cpp
blob: 0fa594658a1de529a2ae8bd7043d19d839fd2673 (plain) (blame)
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
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
#include <iostream>
using namespace std;

int main()
{
	bool found0, found1, found2, found3, found4, found5, found6, found7, found8, found9;
	found0 = found1 = found2 = found3 = found4 = found5 = found6 = found7 = found8 = found9 = false;
	
	int n;
	cin >> n;

	bool foundDuplicate = false;
	while (!foundDuplicate && n != 0)
	{
		int lastDigit = n % 10;
		switch (lastDigit)
		{
		case 0: 
			if (found0)
			{
				foundDuplicate = true;

			}
			found0 = true;
			break;
		case 1:
			if (found1)
			{
				foundDuplicate = true;
			}
			found1 = true;
			break;
		case 2: 
			if (found2)
			{
				foundDuplicate = true;
			}
			found2 = true;
			break;
		case 3: 
			if (found3)
			{
				foundDuplicate = true;
			}
			found3 = true;
			break;
		case 4: 
			if (found4)
			{
				foundDuplicate = true;
			}
			found4 = true;
			break;
		case 5: 
			if (found5)
			{
				foundDuplicate = true;
			}
			found5 = true;
			break;
		case 6: 
			if (found6)
			{
				foundDuplicate = true;
			}
			found6 = true;
			break;
		case 7: 
			if (found7)
			{
				foundDuplicate = true;
			}
			found7 = true;
			break;
		case 8: 
			if (found8)
			{
				foundDuplicate = true;
			}
			found8 = true;
		case 9: 
			if (found9)
			{
				foundDuplicate = true;
			}
			found9 = true;
			break;
		}
		n /= 10;
	}

	cout << foundDuplicate;
}