Luogu вопросы по кисти Язык C++ | P1047 Дерево за школьными воротами

Изучите C++ у ребенка! Записывайте вопросы в процессе изучения Luogu C++ и подготовки к экзаменам и записывайте каждый момент.

Прилагается сводный пост: Вопросы о Luogu Brush, язык C++ | Резюме


【Описание】

За воротами одной школы  на дороге стоит ряд деревьев длиной l  , а расстояние между каждыми двумя соседними деревьями составляет 1 метр. Мы можем рассматривать дорогу как числовую ось, один конец дороги находится в положении числовой оси 0, а другой конец - в положении  l  ; каждая целая точка на числовой оси, то есть 0,1. ,2,…, l посадил дерево.

Потому что на дороге есть участки, которые можно использовать для строительства метро. Эти регионы представлены их начальной и конечной точками на числовой прямой. Известно, что координаты начальной и конечной точки любой области являются целыми числами, и между областями могут быть перекрывающиеся части. Деревья на этих участках (включая два дерева на концах участков) теперь подлежат удалению. Ваша задача — посчитать, сколько деревьев останется на дороге после того, как все эти деревья будут удалены.

【входить】

В первой строке находятся два целых числа, обозначающих соответственно длину  l дороги  и номер  m площади .

Следующие  m  строк, каждая из которых содержит два целых числа  u , v , представляют координаты начальной и конечной точек области.

【Выход】

В каждой строке выведите целое число, обозначающее количество деревьев, оставшихся на дороге после удаления всех этих деревьев.

【Пример ввода】

500 3 150 300 100 200 470 471

【Пример вывода】

298

【Пояснение кода】

#include <bits/stdc++.h>
using namespace std;

int main()
{
    int l,m,u,v,a[10005],ans=0;
    cin >> l >> m;
    for (int i=0; i<=l; i++) {
        a[i] = 1;
    }
    for (int i=0; i<m; i++) {
        cin >> u >> v;
        for (int j=u; j<=v; j++) {
            a[j] = 0;
        }
    }
    for (int i=0; i<=l; i++) {
        if (a[i] == 1) {
            ans++;
        }
    }
    cout << ans;
    return 0;
}

【результат операции】

500 3
150 300
100 200
470 471
298

Guess you like

Origin blog.csdn.net/guolianggsta/article/details/132646003