範例程式碼 uva11728
//uva11728
#include <cmath>
#include <iostream>
using namespace std;
int main() {
// brute force
// enumerate all the situations
int table[1005];
for (int i = 0; i < 1005; ++i)
table[i] = -1;
for (int i = 1; i <= 1000; ++i) {
int tmp = 0;
for (int j = 1; j <= sqrt(i); ++j) {
if (i % j == 0) {
if (i != j * j)
tmp += i / j;
tmp += j;
}
}
if (tmp <= 1000)
table[tmp] = i;
}
int n;
int cnt = 1;
while (cin >> n && n) {
cout << "Case " << cnt << ": " << table[n] << endl;
++cnt;
}
return 0;
}