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;
    }
    

      

     
  • 相关阅读:
    洛谷P3292 [SCOI2016]幸运数字 线性基+倍增
    2019牛客暑期多校第五场题解ABGH
    暑假集训-8.1总结
    主席树
    2019HDU多校第四场题解
    洛谷P4570 [BJWC2011]元素 线性基
    暑假集训-7.31总结
    线性基总结
    Proj. THUIoTFuzz Paper Reading: One Engine to Fuzz 'em All: Generic Language Processor Testing with Semantic Validation
    UVALive5876-Writings on the Wall-KMP
  • 原文地址:https://www.cnblogs.com/clb123/p/10134992.html
Copyright © 2011-2022 走看看