CUTCAKE  Eat all the brownies !
BrownieDude was given the job of cutting cake at a party for serving the guests. But BrownieDude is both lazy and hungry, so he wants to cut the cake into maximum number of pieces with minimum number of cuts and go off to eating brownies.
The host of the party says that BrownieDude can cut the cake into unequal pieces but cannot cut in more than one plane.(Only vertical cuts are allowed.) Given the number of guests, find the number of cuts sufficient to generate the cake pieces.
Input
First line contains 't', the number of test cases. 't' lines follow. (1 <= t <= 1000)
Each line denotes the number of guests. (1 <= n <= 10^11)
Output
One number denoting the number of cuts.
Note: It is guaranteed that an integer solution will always exist.
Example Input:
2
1
2
Example Output:
0
1
Explanation for test cases: If there is only one guest, there is no need to cut the cake. If there are 2 guests, the cake can be cut into 2 pieces in 1 cut.
hide comments
karthik_vg:
20170711 10:43:41
and finally!!!!!!!!........... 100th AC in spoj classic ;) 

hunnychauhan:
20170707 09:30:27
pancake cutting problem...


prasoonbatham:
20161019 17:40:13
Division of a plane by n lines. Simple. :) 

blitzzna:
20160625 19:27:36
got it..


akshayvenkat:
20160608 18:33:29
thankyou @harshitdd210 

harshitdd120:
20160322 23:57:03
found this link very useful


rishabh_1997:
20160215 21:00:52
my 50th : 

Govind Lahoti:
20151214 13:09:16
you can not rearrange the pieces for cutting Last edit: 20151214 13:09:30 

(Tjandra Satria Gunawan)(æ›¾æ¯…æ˜†):
20151126 15:35:49
"Only vertical cuts are allowed" this is misleading statement. got AC after assuming "only straight line cuts are allowed", straight line cut not necessarily vertical, it can be horizontal, diagonal, etc too..


Abishek:
20150925 17:26:35
use long long ...long is giving wrong answer . 
Added by:  Pandian 
Date:  20131219 
Time limit:  0.390s 
Source limit:  50000B 
Memory limit:  1536MB 
Cluster:  Cube (Intel G860) 
Languages:  All 