
#include <iostream>
using namespace std;
int main() {
int num;
int howmuch[10];
int ans = 0;
for (int i = 0; i < 10; i++) {
cin >> num;
num %= 42;
howmuch[i] = num;
}
for (int i = 0; i < 10; i++) {
bool isUnique = true;
for (int j = 0; j < i; j++) {
if (howmuch[i] == howmuch[j]) {
isUnique = false;
break;
}
}
if (isUnique) {
ans++;
}
}
cout << ans;
return 0;
}
각 수를 모두 비교하여 bool값에 따라 결과를 저장하도록 하였다

#include <iostream>
using namespace std;
int main() {
int T;
cin >> T;
int num;
int ans[100000];
int count = 0;
for (int i = 0; i < T; i++) {
cin >> num;
int k = 0;
while (num >= 2) {
ans[k] = num % 2;
num /= 2;
count++;
k++;
}
ans[k] = num;
for (int j = 0; j < count + 1; j++) {
if (ans[j] == 1) {
cout << j << " ";
}
}
cout << endl;
}
}
매번 계산할 때마다 각 자리를 배열에 넣어 인덱스 출력이 쉽도록 만들었다