美团8-26嵌入式软件开发笔试

《嵌入式软件开发笔试与面试手册》https://blog.nowcoder.net/zhuanlan/jvN8gj

《软件开发笔试汇总》https://blog.nowcoder.net/zhuanlan/0oDWVm

小美在手机上种果树,只要成熟了就可以领到免费的水果了。

小美每天可以给果树浇水,果树的成长值加x。同时也可以给果树施肥,两次施肥至少需要间隔2天,果树的成长值加y。果树成长值达到就成熟了。

小红想知道,最少需要多少天可山领到免费的水果。

输入描述

一行三个整数x, y, z,分别表示浇水的成长值,施肥的成长值,果树成熟的成长值。

1≤x, y, z≤10^9

输出描述

一行一个整数,表示最少需要多少天可以领到免费的水果。

示例1

输入

1 2 10

输出

6

说明

第一天施肥浇水,成长值为2+1=3。

第二天浇水,成长值为3+1=4。

第三天浇水,成长值为4+1=5。

第四天施肥浇水,成长值为5+2+1=8。

第五天浇水,成长值为8+1=9。

第六天浇水,成长值为9+1=10。

第六天果树成熟了,可以领到免费水果了!

#include <iostream>

using namespace std;

int main() {
    int x, y, z;
    cin >> x >> y >> z;

    int days = 0;
    while (z > 0) {
        // 尝试先施肥再浇水
        if (z > 2 * x && z > y) {
            z -= (y + x);
            days += 1;
        } else {
            z -= x;
            days += 1;
            continue;
        }
        
        // 检查是否需要继续
        if (z <= 0) break;

        // 连续两天只浇水
        int wateringDays = min(z, 2 * x);
        days += (wateringDays + x - 1) / x;
        z -= wateringDays;
    }

    cout << days << endl;

    return 0;
}

大家一起吃饭的时候,总是小红先付钱,然后大家再把钱转给小红。

现在小红有n张账单,每张账单记录了有k个人—起吃饭,以及吃饭的消费费用c,现在小红需要计算每个人需要转给小红多少钱。

由于大家都比较喜欢整数,所以大家每张账单会转给小红[c/k],[c/k]表示对c/k进行上取整,例如5/2进行上取整为3。

输入描述

第一行输入两个整数n,m(1≤n,m≤10^5)表示账单数和除小红外的总人数(分别用1到m表示).

接下来2×n行,每2行表示一张账单。对于每张账单:

第一行输入两个整数

k(2≤k≤m+1),c(1≤c≤10^9)表示一起吃饭的总人数(总人数包括小红),花费。

第二行输入k-1个整数,表示除小红外有哪些人一起吃饭。

数据保证,k的总和不超过2×10^5.

输出描述

输出m个整数,表示每个人要给小红转账的总金额。

示例1

输入

2 3

3 10

1 2

4 8

1 2 3

输出

6 6 2

说明

第一张账单:第1、2个人都会给小红转4元

第二张账单:第1、2、3个人都会给小红转2元

因此答案为4+2=6,4+2=6,2

#include <iostream>
#include <vector>
using namespace std;

int main() {
    int n, m;
    cin >> n >> m;
    
    vector<int> amount(m, 0); 

    for (int i = 0; i < n; ++i) {
        int k, c;
        cin >> k >> c;
        
        int transfer = (c + k - 1) / k; // 每个人需要给小红的钱

        // 小红自己也算一个人,所以k-1次
        for (int j = 0; j < k - 1; ++j) {
            int person;
            cin >> person;
            amount[person - 1] += transfer; // 更新amount数组
        }
    }

    for (int i = 0; i < m; ++i) {
        cout << amount[i] << "

剩余60%内容,订阅专栏后可继续查看/也可单篇购买

本专栏主要发布嵌入式软件开发相关岗位2023年(2024届)的笔试真题(嵌入式软件开发、通用软件开发、C/C++软件开发、算法工程师、数据开发、测试开发等)主要是算法编程题,其中一些岗位笔试含有对应的选择题、填空题、简单题。

全部评论

相关推荐

明天不下雨了:兄弟你是我今天看到的最好看的简历(我说的是简历风格跟简历书写)把985 211再搞亮一点。投boss就说;您好,我华科(985)研二在读,本科211。对您的岗位很感兴趣,希望能获得一次投递机会。
点赞 评论 收藏
分享
评论
点赞
7
分享

创作者周榜

更多
牛客网
牛客企业服务