Объяснение:
#include <iostream>
#include<vector>
#include <algorithm>
using namespace std;
int main() {
ios::sync_with_stdio(false);
int N, A, B;
cin >> N;
vector < vector <int>> IO;
int lastDay = 0;
for (int i = 0; i < N; i++) {
cin >> A >> B;
IO.push_back(vector<int>());
IO[i].push_back(A);
IO[i].push_back(B);
IO[i].push_back(i);
}
sort(IO.begin(), IO.end());
for (int i = 0; i < N; i++)
{
if (lastDay >= IO[i][1]) {
IO[i][0] = -1;
IO[i][1] = -1;
}
else {
if (lastDay < IO[i][0]) {
lastDay = IO[i][1];
}
else if (lastDay >= IO[i][0]) {
IO[i][0] = lastDay+1;
lastDay = IO[i][1];
}
}
}
for (int i = 0; i < N; i++) {
for (int j = 0; j < N; j++) {
if (IO[j][2] == i) {
cout << IO[j][0] << " " << IO[j][1] << endl;
break;
}
}
}
return 0;
}
Решение #1
Просто вбиваешь код в любой редактор кода с питоном, в конце добавляешь print(i, S) и получаешь ответ.
Решение #2
Заметим, что код внутри while выполнится 3 раза, т.к. после третьего выполнения переменная i будет равна 3, и цикл while перестанет работать. Следовательно, переменная S также будет три раза увеличиваться на i.
при i == 0: i = 0 + 1 = 1; S = 0 + 1 = 1;при i == 1: i = 1 + 1 = 2; s = 1 + 2 = 3;при i == 2: i = 2 + 1 = 3; S = 3 + 3 = 6;при i == 3: код внутри while не выполняется.Получим, что переменная i в итоге стала равна 3, а S — 6.
В ответе сначала указываем i, а затем S.
ответ: В (3, 6).