Codeforces 82A-Double Cola
問題概要
5人がコーラを順番に買うことにした.
コーラーを買う個数は最初は一つで,各個人ごとに買う個数が倍々に増えていくとする.
N番目のコーラーを買う人は誰になるか.
解法
実装するだけ.
オーダーが対すうになるので間に合う.
実装(C++)
#include <iostream> using namespace std; string s[5]={"Sheldon", "Leonard", "Penny", "Rajesh", "Howard"}; int n; int main() { cin>>n; n--; int q=5; int cnt=1; for(;n>=q;){ n-=q; q*=2; cnt*=2; } cout<<s[n/cnt]<<endl; return 0; }