// UVa 10784 - Diagonal
#include <iostream>
#include <stdio.h>
#include <math.h>
using namespace std;
#define integer unsigned long long int
int main() {
integer n;
int t = 0;
while ((cin >> n) && n != 0) {
t++;
// s*(s-1)/2 - s <= n
// 0.5*s^2 - 1.5*s - n <= 0
double a = 0.5;
double b = -1.5;
double c = -1.0 * n;
double d = b * b - 4 * a * c;
double x = (-b + sqrt(d)) / (2 * a);
integer s = (integer) (ceil(x));
printf("Case %d: %llu\n", t, s);
}
return 0;
}
No comments:
Post a Comment