zoukankan      html  css  js  c++  java
  • 不容易系列之二

    你活的不容易,我活的不容易,他活的也不容易。不过,如果你看了下面的故事,就会知道,有位老汉比你还不容易。 

    重庆市郊黄泥板村的徐老汉(大号徐东海,简称XDH)这两年辛辛苦苦养了不少羊,到了今年夏天,由于众所周知的高温干旱,实在没办法解决牲畜的饮水问题,就决定把这些羊都赶到集市去卖。从黄泥板村到交易地点要经过N个收费站,按说这收费站和徐老汉没什么关系,但是事实却令徐老汉欲哭无泪: 

    (镜头回放) 

    近景:老汉,一群羊 
    远景:公路,收费站 

    ...... 

    收费员(彬彬有礼+职业微笑):“老同志,请交过路费!” 

    徐老汉(愕然,反应迟钝状):“锅,锅,锅,锅-炉-费?我家不烧锅炉呀?” 

    收费员(职业微笑依然):“老同志,我说的是过-路-费,就是你的羊要过这个路口必须交费,understand?” 

    徐老汉(近镜头10秒,嘴巴张开):“我-我-我知道汽车过路要收费,这羊也要收费呀?” 

    收费员(居高临下+不解状):“老同志,你怎么就不明白呢,那么我问你,汽车几个轮子?” 

    徐老汉(稍放松):“这个我知道,今天在家里我孙子还问我这个问题,4个!” 

    收费员(生气,站起):“嘿!老头,你还骂人不带脏字,既然知道汽车四个轮子,难道就不知道这羊有几条腿吗?!” 

    徐老汉(尴尬,依然不解状):“也,也,也是4个呀,这有关系吗?” 

    收费员(生气,站起):“怎么没关系!我们头说了,只要是4条腿的都要收费!” 

    ...... 

    (画外音) 

    由于徐老汉没钱,收费员就将他的羊拿走一半,看到老汉泪水涟涟,犹豫了一下,又还给老汉一只。巧合的是,后面每过一个收费站,都是拿走当时羊的一半,然后退还一只,等到老汉到达市场,就只剩下3只羊了。 

    你,当代有良知的青年,能帮忙算一下老汉最初有多少只羊吗? 

    Input输入数据第一行是一个整数N,下面由N行组成,每行包含一个整数a(0<a<=30),表示收费站的数量。 
    Output对于每个测试实例,请输出最初的羊的数量,每个测试实例的输出占一行。 
    Sample Input

    2
    1
    2

    Sample Output

    4
    6





    思路 : 简单的递推,因为多给了一只羊,所以在此基础上减去一再乘以2就是上一次过收费站羊的数量,然后依次类推,令x初值为3,得到公式x = (x-1)*2;




    #include<bits/stdc++.h>
    using namespace std;
    int main()
    {
    	int n,m;
    	scanf("%d",&n);
    	while(n--){
    		int x = 3,i;
    		scanf("%d",&m);
    		for(i = 0; i<m; i++){
    			x = (x-1)*2;
    		}
    		printf("%d
    ",x);
    	}
    	return 0;
    }
    

      

     
  • 相关阅读:
    1093 Count PAT's(25 分)
    1089 Insert or Merge(25 分)
    1088 Rational Arithmetic(20 分)
    1081 Rational Sum(20 分)
    1069 The Black Hole of Numbers(20 分)
    1059 Prime Factors(25 分)
    1050 String Subtraction (20)
    根据生日计算员工年龄
    动态获取当前日期和时间
    对计数结果进行4舍5入
  • 原文地址:https://www.cnblogs.com/clb123/p/10134992.html
Copyright © 2011-2022 走看看