#include <stdio.h>
#include <math.h>
int getExp(int level) {
return 321 * pow(level
, 2) + 4679 * level
; }
int s1
= pow(4679, 2) - 4 * 321 * -exp; int s2
= -4679 + sqrt(s1
); return s2 / (2 * 321);
}
int main(void) {
printf("Level 2 XP: %d\n", getExp
(1)); printf("Level 5 XP: %d\n", getExp
(4)); printf("Level 10 XP: %d\n", getExp
(9)); printf("Level 50 XP: %d\n", getExp
(49)); printf("Level 100 XP: %d\n", getExp
(99));
printf("XP 5000 = Level %d\n", getLevel
(5000) + 1); printf("XP 10000 = Level %d\n", getLevel
(10000) + 1); printf("XP 50000 = Level %d\n", getLevel
(50000) + 1); printf("XP 100000 = Level %d\n", getLevel
(100000) + 1); printf("XP 500000 = Level %d\n", getLevel
(500000) + 1); printf("XP 1000000 = Level %d\n", getLevel
(1000000) + 1); printf("XP 1655444 = Level %d\n", getLevel
(1655445) + 1);
return 0;
}
I2luY2x1ZGUgPHN0ZGlvLmg+CiNpbmNsdWRlIDxtYXRoLmg+CgppbnQgZ2V0RXhwKGludCBsZXZlbCkgewoJcmV0dXJuIDMyMSAqIHBvdyhsZXZlbCwgMikgKyA0Njc5ICogbGV2ZWw7Cn0KCmludCBnZXRMZXZlbChpbnQgZXhwKSB7CglpbnQgczEgPSBwb3coNDY3OSwgMikgLSA0ICogMzIxICogLWV4cDsKCWludCBzMiA9IC00Njc5ICsgc3FydChzMSk7CglyZXR1cm4gczIgLyAoMiAqIDMyMSk7Cn0KCmludCBtYWluKHZvaWQpIHsKCXByaW50ZigiTGV2ZWwgMiBYUDogJWRcbiIsIGdldEV4cCgxKSk7CglwcmludGYoIkxldmVsIDUgWFA6ICVkXG4iLCBnZXRFeHAoNCkpOwoJcHJpbnRmKCJMZXZlbCAxMCBYUDogJWRcbiIsIGdldEV4cCg5KSk7CglwcmludGYoIkxldmVsIDUwIFhQOiAlZFxuIiwgZ2V0RXhwKDQ5KSk7CglwcmludGYoIkxldmVsIDEwMCBYUDogJWRcbiIsIGdldEV4cCg5OSkpOwoKCXByaW50ZigiWFAgNTAwMCA9IExldmVsICVkXG4iLCBnZXRMZXZlbCg1MDAwKSArIDEpOwoJcHJpbnRmKCJYUCAxMDAwMCA9IExldmVsICVkXG4iLCBnZXRMZXZlbCgxMDAwMCkgKyAxKTsKCXByaW50ZigiWFAgNTAwMDAgPSBMZXZlbCAlZFxuIiwgZ2V0TGV2ZWwoNTAwMDApICsgMSk7CglwcmludGYoIlhQIDEwMDAwMCA9IExldmVsICVkXG4iLCBnZXRMZXZlbCgxMDAwMDApICsgMSk7CglwcmludGYoIlhQIDUwMDAwMCA9IExldmVsICVkXG4iLCBnZXRMZXZlbCg1MDAwMDApICsgMSk7CglwcmludGYoIlhQIDEwMDAwMDAgPSBMZXZlbCAlZFxuIiwgZ2V0TGV2ZWwoMTAwMDAwMCkgKyAxKTsKCXByaW50ZigiWFAgMTY1NTQ0NCA9IExldmVsICVkXG4iLCBnZXRMZXZlbCgxNjU1NDQ1KSArIDEpOwoKCXJldHVybiAwOwp9Cg==