The 2015 China Collegiate Programming Contest L. Huatuo's Medicine hdu 5551

Huatuo's Medicine

Time Limit: 3000/1000 MS (Java/Others)    Memory Limit: 65535/65535 K (Java/Others)
Total Submission(s): 398    Accepted Submission(s): 272


Problem Description
Huatuo was a famous doctor. He use identical bottles to carry the medicine. There are different types of medicine. Huatuo put medicines into the bottles and chain these bottles together.

However, there was a critical problem. When Huatuo arrived the patient's home, he took the chain out of his bag, and he could not recognize which bottle contains which type of medicine, but he remembers the order of the bottles on the chain.

Huatuo has his own solution to resolve this problem. When he need to bring 2 types of medicines, E.g. A and B, he will put A into one bottle and put B into two bottles. Then he will chain the bottles in the order of BAB. In this way, when he arrived the patient's home, he knew that the bottle in the middle is medicine A and the bottle on two sides are medicine B.

Now you need to help Huatuo to work out what's the minimal number of bottles needed if he want to bring N types of medicine.
 

 

Input
The first line of the input gives the number of test cases, T(1T100)T lines follow. Each line consist of one integer N(1N100), the number of types of the medicine.
 

 

Output
For each test case, output one line containing Case #x: y, where x is the test case number (starting from 1) and y is the minimal number of bottles Huatuo needed.
 

 

Sample Input
1 2
 

 

Sample Output
Case #1: 3
 
 1 #include<cstdio>
 2 #include<cstring>
 3 #include<algorithm>
 4 #include<iostream>
 5 using namespace std;
 6 int main() {
 7     int T, tot = 0;
 8     scanf("%d", &T);
 9     while (T--) {
10         int n;
11         scanf("%d", &n);
12         printf("Case #%d: %d\n", ++tot, 2*n-1);
13     }
14 }
View Code

 

posted @ 2015-12-22 21:21  yanzx6  阅读(186)  评论(0编辑  收藏  举报