ACM练习——第五天

 还有两天就要比赛了,进入正题吧

题目一:小红的签到题

小红的签到题 (nowcoder.com)

这道题也就是热身水平,机会很清楚的发现只需要c/a就可以得出答案了

参考代码:

#include <iostream>

using namespace std;

int main(){
    int a,b,c;
    cin >> a >> b >> c;
    
    cout << c / a;
}


题目二:赢得次数

赢的次数 (nowcoder.com)

看着是不是觉得要把所有的情况都分析出来,然后找到最多的一个或者两个。

非常正确,但是足够单纯

 详细思考一下,你会发现,如果

n是偶数:那么出现赢的次数最多会出现在中间值,也就是 n/2

n是奇数:那么出现赢的次数最多会出现在中间值,但是因为是奇数所以是 n/2 n/2 + 1

代码示例:

#include <iostream>

using namespace std;

int main(){
    int n;
    cin >> n;
    
    if(n % 2 == 0){
        cout << n / 2;
    }else{
        cout << n / 2 << " " << n / 2 + 1;
    }
    return 0;
}


题目三:小竹与妈妈

小竹与妈妈 (nowcoder.com)

 只是一道数学题代码化罢辽

x = ay + b

==>  y = (x - b) / a

直接就拿下啦

#include <iostream>

using namespace std;

int main(){
    int a,b,x;
    cin >> a >> b >> x;
    
    cout << (x - b) / a;
    return 0;
}


题目四:最小的数字

最小的数字 (nowcoder.com)

也是一道简单题,只需要找到比n大的第一个是三的倍数的数就搞定了

注意,不要掉进坑里,是三的倍数,而不是三的次幂

直接拿捏

#include <iostream>

using namespace std;

int main(){
    int n ;
    cin >> n;
    
    int x;
    // 现在来找寻找目标值
    if(n % 3 == 0){
        cout << n;
    }
    if(n % 3 == 2){
        cout << n + 1;
    }
    if(n % 3 == 1){
        cout << n + 2;
    }
    
    return 0;
}


题目五:猜拳游戏

猜拳游戏 (nowcoder.com)

那看完这段话我说句实话这不纯纯送分题吗?

代码示例:
 

#include <iostream>
#include <string>

using namespace std;

int main(){
    string jdb;
    cin >> jdb;
    if(jdb.compare("shitou") == 0){
        cout << "shitou";
    }
    if(jdb.compare("jiandao") == 0){
        cout << "jiandao";
    }
    if(jdb.compare("bu") == 0){
        cout << "bu";
    }
    return 0;
}


题目六:小杜要迟到了

 

先分析,n,k,a,b分别是n楼,a为爬楼速度,b是电梯上楼速度,一开始电梯在k楼

所以做电梯要先花费k*b时间下楼,再花n*b的时间上楼,然后总体时间加和

走楼梯直接就是a*b完事

然后是代码:

#include <iostream>

using namespace std;

int main(){
    int n,k,a,b;
    cin >> n >> k >> a >> b;
    
    // 计算电梯时间
    int eTime = (k-1)*b + (n-1)*b;
    int lTime = (n-1)*a;
    
    if(eTime > lTime ){
        cout << 2;
    }
    if(eTime < lTime){
        cout << 1;
    }
    if(eTime == lTime){
        cout << 0;
    }
    return 0;
}

结语

虽然都是简单题但是我累了,晚安(¦3[▓▓] 晚安

  • 5
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

WenJGo

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值