題目很奇怪,就是5個人排隊喝可樂,喝完之後編程兩個人,然後拍在隊後面,然後繼續喝可樂。
給出個數值,代表第幾罐可樂,問會是第幾個人喝到?
http://codeforces.com/problemset/problem/82/A
一個數學問題,仔細點就好了。
要熟練的知識點:
1 要熟悉解決這種遞增數列,如何減去循環部分
2 要知道如何計算,求余取答案
#include#include using namespace std; void DoubleCola() { string strs[] = {"Sheldon", "Leonard", "Penny", "Rajesh", "Howard"}; int n = 0; cin>>n; int i = 1; while (n > i*5)//100 - 5 - 10 - 20 - 40 ... { n -= i*5; i <<= 1; } int a = n / i; if (n % i) a++; cout<