# | Time | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
338451 | amunduzbaev | Odd-even (IZhO11_oddeven) | C++14 | 0 ms | 0 KiB |
This submission is migrated from previous version of oj.uz, which used different machine for grading. This submission may have different result if resubmitted.
x = int(input())
l = 1
r = math.sqrt(x)
while (l < r):
m = (l + r)//2
if((m*(m+1)//2) > x):
r = m-1
elif(((m+1)*(m+2)//2) < x):
l = m+1
else:
break
ans = (l + r)//2
need = x - ans*(ans+1)//2
if(need == 0):
aa = ans * ans
else :
aa = ans * ans+1 +((need-1)*2)
print(aa)