变强了,也秃了 2022-07-22 15:23 采纳率: 66.7%
浏览 29
已结题

OJ-涂气球,这是我自己想的一个办法,没有用差分知识,中间那一段不知道为什么不输出

中间那一段输出直接被跳过,不知道什么原因

#include <iostream>
#include <string.h>
using namespace std;

int main()
{
    int N;
    int s[1000];
    while (cin >> N && N != 0)
    {
        int n = N;
        int a, b;
        memset(s, 0, sizeof(s));
        while (n--);
        {
            cin >> a >> b;
            if (a == b)
                s[a]++;
            else
                for (int i = 1; i <= b - a; i++)
                    s[i]++;
        }
        for (int j = 1; j <= n; j++)
        {
            cout << s[j];
            cout << " ";
        }
        cout << endl;
    }
    
    return 0;
}
  • 写回答

1条回答 默认 最新

  • 快乐鹦鹉 2022-07-22 15:28
    关注

    while (n--);
    这个后面分号去掉
    另外while结束后,n就变为负数了,所以23行的for循环自然就跳过去啦

    #include <iostream>
    #include <string.h>
    using namespace std;
     
    int main()
    {
        int N;
        int s[1000];
        while (cin >> N && N != 0)
        {
            int n = N;
            int a, b;
            memset(s, 0, sizeof(s));
            while (n--)
            {
                cin >> a >> b;
                if (a == b)
                    s[a]++;
                else
                    for (int i = 1; i <= b - a; i++)
                        s[i]++;
            }
            for (int j = 1; j <= N; j++)
            {
                cout << s[j];
                cout << " ";
            }
            cout << endl;
        }
        
        return 0;
    }
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录

报告相同问题?

问题事件

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

悬赏问题

  • ¥15 用友U8:向一个无法连接的网络尝试了一个套接字操作,如何解决?
  • ¥30 我的代码按理说完成了模型的搭建、训练、验证测试等工作(标签-网络|关键词-变化检测)
  • ¥50 mac mini外接显示器 画质字体模糊
  • ¥15 TLS1.2协议通信解密
  • ¥40 图书信息管理系统程序编写
  • ¥20 Qcustomplot缩小曲线形状问题
  • ¥15 企业资源规划ERP沙盘模拟
  • ¥15 树莓派控制机械臂传输命令报错,显示摄像头不存在
  • ¥15 前端echarts坐标轴问题
  • ¥15 ad5933的I2C