1235 - 不容易

22软工邵靖婷 2023-01-17 14:01:03

描述

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

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

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

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

输入

输入数据第一行是一个整数N,下面由N行组成,每行包含一个整数a(0<a<=30),表示收费站的数量。

输出

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

样例

题解

解题的关键在于我们只知道最后剩了三只羊,所以要从后向前推理,最后一次路过收费站时候羊的数量=(最后剩的羊数-退还回来的一只)*2,运用一个简单的循环,解出最开始有多少只羊。

AC代码

#include <bits/stdc++.h>
using namespace std;
int main()
{
    int t,n,s,i;
    cin>>t;
    while(t--)
    {
        cin>>n;
        s=3;
        for(i=0;i<n;i++)
        {
            s=(s-1)*2;
        }

        cout<<s<<endl;
    }
return 0;}
...全文
139 回复 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复

153

社区成员

发帖
与我相关
我的任务
社区管理员
  • c_university_364
  • 焚冉
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧