#P1218. THE DRUNK JAILER
THE DRUNK JAILER
描述
某监狱有一条长长的走廊,里面有间并排的牢房,每间牢房里都关着一名囚犯,且初始时所有牢房都是锁着的。
一天晚上,狱警感到无聊,决定玩一个游戏:第轮:他喝一口威士忌,然后跑过走廊,打开所有牢房的锁。第轮:他再喝一口威士忌,然后跑过走廊,锁上每隔一间的牢房(即第间)。第轮:他又喝一口威士忌,然后跑过走廊,切换每隔两间牢房的状态(即第间,如果牢房是锁着的就打开,如果是开着的就锁上)。他重复这个过程,直到进行完轮,最后再喝一口威士忌,然后醉倒。
某些囚犯(可能为零)发现自己的牢房没锁且狱警醉倒了,于是立即越狱。
给定牢房的数量,计算有多少囚犯成功越狱。
输入
第一行输入一个正整数,表示接下来有多少组测试数据。
接下来的每行包含一个整数,表示牢房的数量。
输出
对于每组数据,输出当监狱有间牢房时,成功越狱的囚犯数量。
2
5
100
2
10
来源
Greater New York 2002