码蹄杯刷题

MC0102房间打扫

贪心解法:统计每列0的个数,超过一半就打扫

有3个测试点会WA

cpp 复制代码
#include <iostream>
#include <vector>
using namespace std;
int main()
{
    int n;
    cin >> n;
    int res = 0;
    vector<vector<char>> s(n, vector<char>(n));
    vector<int> cnt(n);
    for (int i = 0; i < n; i++)
    {
        for (int j = 0; j < n; j++)
        {
            cin >> s[i][j];
            if (s[i][j] == '0')
            {
                cnt[j]++;
            }
        }
    }
    for (int j = 0; j < n; j++)
    {
        if (cnt[j] * 2 > n)
        {
            for (int i = 0; i < n; i++)
            {
                if (s[i][j] == '1')
                {
                    s[i][j] = '0';
                }
                else
                {
                    s[i][j] = '1';
                }
            }
        }
    }
    for (int i = 0; i < n; i++)
    {
        bool flag = true;
        for (int j = 0; j < n; j++)
        {
            if (s[i][j] == '0')
            {
                flag = false;
                break;
            }
        }
        if (flag)
        {
            res++;
        }
    }
    cout << res;
    return 0;
}

正确解法是哈希表

统计相同的字符串

cpp 复制代码
#include <iostream>
#include <string>
#include <unordered_map>
#include <algorithm>
using namespace std;
int main()
{
    unordered_map<string, int> map;
    int n;
    cin >> n;
    int res = 0;
    string s;
    for (int i = 0; i < n; i++)
    {
        cin >> s;
        map[s]++;
        res = max(res, map[s]);
    }
    cout << res;
    return 0;
}

MC0104项链

cpp 复制代码
#include <iostream>
#include <algorithm>
#include <vector>
using namespace std;
int main()
{
    int n;
    cin >> n;
    vector<int> s(n);
    for (int i = 0; i < n; i++)
    {
        cin >> s[i];
    }
    sort(s.begin(), s.end());
    int high = 0;
    int low = 0;
    for (int i = 0; i < n / 2; i++)
    {
        low += s[i];
    }
    for (int i = n - n / 2; i < n; i++)
    {
        high += s[i];
    }
    cout << 2 * (high - low);
    return 0;
}
相关推荐
机器人零零壹27 分钟前
技术白皮书:iRobotCAM如何解决机器人激光切割应用中的核心难点,从CAD离线编程到双目视觉定位与轨迹自适应提升复杂空间曲线切割的精度、效率与柔性化水平
人工智能·算法
布莱克6052 小时前
C/C++ 中变量的声明与定义:区别、联系与常见误区
c语言·开发语言·c++·声明·定义
ZhengEnCi3 小时前
大模型的分类到底怎么分:从基础模型到推理模型、从通用到专用的完整图谱
算法
取名真是4 小时前
Python 算法知识点从基础到进阶
开发语言·python·算法
罗西的思考4 小时前
【轻量化复刻大模型 / KIMI K3】KDA 模块交互式演示
人工智能·算法·机器学习
沫璃染墨6 小时前
从零入门计算机网络系列(十二):HTTP长连接与会话管理详解——从Connection到Cookie与Session
linux·服务器·c++·tcp/ip·ubuntu·http·交互
nm_zfyjt6 小时前
信息流广告投放优化实践:线索成本评估模型与转化链路重构(家装建材案例)
算法·重构·内蒙古朋友圈广告服务商·内蒙古朋友圈获客
xiaoye-duck7 小时前
《C++ 项目:手写大模型接入 SDK》DeepSeek接口设计(下):流式响应实现和测试
开发语言·网络·c++·语言模型
w_zero_one8 小时前
算法--构造
java·数据结构·算法
其实防守也摸鱼8 小时前
信创安全竞赛知识总结与题库
大数据·网络·人工智能·算法·安全·php