题目
原题链接:A. Double Cola
题意
5个人轮流喝可乐,喝完后分裂成两个排到队尾,问第n个喝的是谁。模拟他们喝可乐。
代码
#include<bits/stdc++.h>
using namespace std;
int main() {
    string name[6]= {"","Sheldon","Leonard","Penny","Rajesh","Howard"};
    int n;
    scanf("%d",&n);
    if(n<6) {
        cout<<name[n];
    } else {
        int count=0;
        for(int i=1; i<=1000000000; i*=2) {
            for(int j=1; j<=5; j++) {
                for(int k=i; k>0; k--) {
                    count++;
                    if(count==n) {
                        cout<<name[j]<<endl;
                        return 0;
                    }
                }
            }
        }
    }
    return 0;
}