Chesapeake-Ripper 2023-03-22 19:19 采纳率: 100%
浏览 82
已结题

2023年中国传媒大学程序设计大赛(同步赛)

链接:https://ac.nowcoder.com/acm/contest/53284/B?&headNav=acm
来源:牛客网

题目描述
小草莓 Diana 同学是众所周知的大胃王,如果每天无法吃够总计 K 饱腹度的外卖,她就会不开心。

今天她的朋友 —— 帅气的 Queen 同学拿到了 Diana 之前 N 天点的所有外卖的外卖单,共计 S 份。
每份外卖单上有两个数字,ni 和 ki ,分别表示这份外卖是 Diana 是在这 N 天里的 第 ni 天点的,且这份外卖饱腹度为 ki 。
现在她想要计算之前 N 天中,Diana有多少天是不开心的,你能帮她吗?

输入描述:
第一行输入 N 和 K 和 S,
接下来 S 行,其中第 i 行代表一份外卖单,包含两个整数 ni 和 ki,
表示 Diana 在第 ni 天,吃了一份饱腹度为 ki 的食物。
输出描述:
输出Diana 不开心的天数。

示例1
输入
复制
10 5 5
4 6
2 5
3 4
3 1
1 1
输出
复制
7

为什么用map一直错呀,90%样例通过率。

#include<iostream>  
#include<map>
using namespace std;
typedef map< int, int> MP;
int main()
{
    map<int, int> mp;//first second
     int N, K, S;
    cin >> N >> K >> S;
     int  ni, ki;
    for ( int  i = 1; i <= S; i++)
    {
        cin >> ni >> ki;
            mp[ni] += ki;
    }
    MP::iterator q = mp.begin();
    for (; q != mp.end(); q++)
    {
        if (q->second >= K)
        {
            N -= 1;
        }
    }
    cout << N;
}
  • 写回答

1条回答 默认 最新

  • 空白样 2023-03-22 20:25
    关注

    你没有考虑 K = 0 的情况

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

    报告相同问题?

    问题事件

    • 系统已结题 3月30日
    • 已采纳回答 3月22日
    • 创建了问题 3月22日

    悬赏问题

    • ¥15 关于网上一个easyx制作的见缝插针小游戏(c++)
    • ¥15 开地址法双散列函数处理碰撞
    • ¥15 想问一下这个是什么情况 虚拟机Linux打不开了
    • ¥15 联通光猫掉注册了怎么重新注册上去
    • ¥15 关于unity开发steamvr程序遇到的问题
    • ¥60 求tc downloader的下载方式
    • ¥15 华为 快捷方式 手电筒 接口
    • ¥15 Qt6.5支不支持Android13开发啊
    • ¥20 网络只能跑一半,应该如何设置
    • ¥20 Python调用百度开发者平台人脸识别接口