5.14奇安信C++笔试复盘

1、一个画布大小为100*100。画布本来是白色的。小明在上面画框,框里的小方格,如果是白色的就会变成黑色,如果是黑色的,就会变成白色。问题:小明画了很多次框后,画布上白色的小方格有多少个。

输入:【[0 0 1 1],[4 4 2 2]】

输出:9995

说明:白色面积为100*100-1-4 = 9995.

2、某几位同学准备要5排一起打手机游戏,现在他们5个人一共有N台手机,但是各个手机剩余电量不等,假设每玩一分钟需要消耗电量1%,不玩手机不消耗电量,手机电量消耗光之后可以换剩余的有电的手机继续一起游戏,那么他们最多能保持多久的5人一起游戏时间?

输入:每台手机的剩余电量

[100 100 100 50 100 5 10]

输出:预期时间

[65]

class Solution {
public:
    int maxTime(vector<int>& batteries) {
        sort(batteries.begin(), batteries.end(), greater<int>());
        int time = 0;
        int K = batteries.size();
        while(K >= 5) {
            for (int i = 0; i < 5; i++) {
                batteries[i] --;
                if (batteries[i] == 0) K--;
            }
            time++;
            sort(batteries.begin(), batteries.end(), greater<int>());
            
        }
        return time;
    }
};

全部评论
楼主,收到面试通知了吗?
2 回复 分享
发布于 2023-05-16 10:34 湖北
第一次到底咋做呢
1 回复 分享
发布于 2023-05-14 21:40 广东
佬第二题ac了吗?我用的优先队列50%了
1 回复 分享
发布于 2023-05-14 23:59 广东
大佬,摩拜
点赞 回复 分享
发布于 2023-05-14 21:38 湖南
都是暴力破解啊
点赞 回复 分享
发布于 2023-05-14 21:58 河北
和我想的一样,最后写到统计颜色的时候自动交卷了,哭了
点赞 回复 分享
发布于 2023-05-14 22:13 北京
第二题java差不多也这么干的过了50%
点赞 回复 分享
发布于 2023-05-15 14:40 江苏
嘤嘤嘤奇安信hr面结束后一直没消息已经三周了
点赞 回复 分享
发布于 2023-05-15 17:11 浙江
这里为什么要进行排序呀
点赞 回复 分享
发布于 2023-05-15 17:54 陕西
我的第二题想法是: duque容器支持双端操作,先从小到大排序。然后长度大于5循环,判断第一个数是不是0,是就删除头元素。不是就所有元素减头元素的值,然后time+=头元素。
点赞 回复 分享
发布于 2023-05-16 10:36 辽宁
大佬
点赞 回复 分享
发布于 2023-05-16 14:49 山东
阿里lazada招暑假实习,androidios客户端(广深),前端(广深),算法(广深),java(广深),产品(北京),数据(北京),测试(广深),c++(北京),要求毕业时间23年10月到24年九月,要求过6级。简历 带岗位名 到邮箱xjx284606@alibaba-inc.com可以给服务端面经!实习工资400一天
点赞 回复 分享
发布于 2023-05-16 15:06 广东
奇安信是acm模式的吗
点赞 回复 分享
发布于 2023-05-23 22:15 四川
第二题还是暴力好使
点赞 回复 分享
发布于 2023-06-04 14:26 山西

相关推荐

点赞 评论 收藏
分享
12 38 评论
分享
牛客网
牛客企业服务