标签:from his can == -o stream ace col com
http://codeforces.com/gym/101061/problem/A
Omar has a deck of cards. Every card has a unique integer number written on it. He says that his cards are numbered starting from 1, and if a card with number N exists, then a card with number N + 1 exists. Yes he may have an infinite sequence !
Yesterday when he went to school, his little brother Samir played with his cards by sorting them into two boxes according to the numbers written on them by repeating the following two steps:
First box : 1, 3, 4, 5, 7, ...
Second box : 2, 6, 8, 10, 14, ...
Omar came back home and he asked Samir for the card with number Q written on it. Help Samir to find out in which box he can find the required card.
Your program will be tested on one or more test cases. The first line of the input will be a single integer T, the number of test cases .
T lines follow, each describing a test case consisting of a single integer Q (1 ≤ Q ≤ 1018)
For every test case print "First Box" if the card is in the first box or "Second Box" otherwise.
3
1
6
1024
First Box
Second Box
First Box
#include <cstdio> #include <cstring> #include <cmath> #include <algorithm> #include <iostream> #include <algorithm> #include <iostream> #include <cstdio> #include <string> #include <cstring> #include <stdio.h> #include <queue> #include <string.h> #include <vector> #include <map> #define ME(x , y) memset(x , y , sizeof(x)) #define SF(n) scanf("%d" , &n) #define rep(i , n) for(int i = 0 ; i < n ; i ++) #define INF 0x3f3f3f3f #define mod 1000000007 using namespace std; typedef long long ll ; int main() { int t ; scanf("%d" , &t); while(t--) { ll n , ans = 0 ; scanf("%lld" , &n); if(n % 2 == 1) { printf("First Box\n"); } else { while(n % 2 == 0) { n /= 2 ; ans ++ ; } if(ans % 2 == 1) printf("Second Box\n"); else printf("First Box\n"); } } return 0 ; }
标签:from his can == -o stream ace col com
原文地址:https://www.cnblogs.com/nonames/p/11379384.html