• ACM_抢糖果


    抢糖果

    Time Limit: 2000/1000ms (Java/Others)

    Problem Description:

    今天计实班的生活委员心情大好,在永诚超市狂购了好多好多糖果,好开心~o(∩_∩)o 
    刚付完款,她就遇到吃货吖杰,被他剥削了一半的糖果("▔□▔)/还好此货良心未泯,又还给了生活委员糖果。。。一颗,就厚着脸皮走了(︶︿︶)
    刚踏出超市大门,她就遇到了坑货吟姐,又被剥削了一半!还好吟姐够慈善,又还给她一颗o_O
    之后她又遇到枫兄,明哥,谭叔,吖虾,大婶,小白,媳妇......好衰,JS班才多少人,这一路她就遇到了n个,每次都被夺走手上一半的糖果,又拿回一颗。
    当她回到宿舍时,手上只剩4颗糖果!泪奔了o(>﹏<)o,她可是一颗都没吃呢!话说一开始买了多少糖果她都不知道额,你能帮她算下么?

    Input:

    输入数据第一行是一个整数t,表示有t个测试实例,每个实例一行,每行有一个整数n(0<n<=30),表示遇到的人数。
    

    Output:

    对于每个测试实例,请输出最初糖果的数量,每个实例输出占一行。

    Sample Input:

    6
    4
    3
    2
    1
    5
    29

    Sample Output:

    34
    18
    10
    6
    66
    1073741826
    解题思路:水题!!!但要注意输出值可能爆int,当n==30时(1073741826-1)*2=2147483650>2147483647,所以sum要用long long,水过!
    AC代码:
     1 #include<bits/stdc++.h>
     2 using namespace std;
     3 int main()
     4 {
     5     int t,n;long long sum;
     6     cin>>t;
     7     while(t--){
     8         cin>>n;
     9         sum=4;
    10         while(n--)sum=(sum-1)*2;
    11         cout<<sum<<endl;
    12     }
    13     return 0;
    14 }
  • 相关阅读:
    pat1038. Recover the Smallest Number (30)
    pat1037. Magic Coupon (25)
    pat1036. Boys vs Girls (25)
    pat1031. Hello World for U (20)
    pat1030. Travel Plan (30)
    pat1028. List Sorting (25)
    pat1027. Colors in Mars (20)
    pat1017. Queueing at Bank (25)
    pat1025. PAT Ranking (25)
    Reverse Linked List II
  • 原文地址:https://www.cnblogs.com/acgoto/p/9002202.html
Copyright © 2020-2023  润新知