Thursday, June 11, 2015

UVa 640 - Self Numbers

// UVa 640 - Self Numbers

#include <iostream>
#include <string.h>
using namespace std;

#define integer unsigned long long

bool self[1000100];

int main() {
	memset(self, true, sizeof(self));
	for (integer i = 1; i <= 1000000; i++) {
		if (self[i])
			cout << i << endl;
		integer n = i;
		integer dn = n;
		while (n) {
			dn += n % 10;
			n /= 10;
		}
		self[dn] = false;
	}
	return 0;
}

No comments:

Post a Comment