#include <bits/stdc++.h>
using namespace std;
#define ll long long
int main()
{
ios_base::sync_with_stdio(0);
ll dni, dzien1, x, zera ,n, pop, aktwielk;
cin >> dni >> dzien1;
ll wynik = dzien1;
priority_queue <ll> que;
for(ll i = 0; i < dni-1; ++i){
cin >> n;
zera = 0;
for(ll j = 0; j < n; ++j){
cin >> x;
if(x == 0){
zera++;
}
else{
que.push(x);
}
}
pop = 0;
aktwielk = 0;
while(!que.empty()){
if(que.top() != pop){
if(pop == 0){
pop = que.top();
aktwielk = 1;
que.pop();
}
else{
wynik += aktwielk-1;
aktwielk = 1;
pop = que.top();
que.pop();
}
}
else{
aktwielk++;
que.pop();
}
}
if(aktwielk > 0) wynik += aktwielk-1;
if(wynik < n){
wynik = n;
}
}
cout << wynik;
}
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 | #include <bits/stdc++.h> using namespace std; #define ll long long int main() { ios_base::sync_with_stdio(0); ll dni, dzien1, x, zera ,n, pop, aktwielk; cin >> dni >> dzien1; ll wynik = dzien1; priority_queue <ll> que; for(ll i = 0; i < dni-1; ++i){ cin >> n; zera = 0; for(ll j = 0; j < n; ++j){ cin >> x; if(x == 0){ zera++; } else{ que.push(x); } } pop = 0; aktwielk = 0; while(!que.empty()){ if(que.top() != pop){ if(pop == 0){ pop = que.top(); aktwielk = 1; que.pop(); } else{ wynik += aktwielk-1; aktwielk = 1; pop = que.top(); que.pop(); } } else{ aktwielk++; que.pop(); } } if(aktwielk > 0) wynik += aktwielk-1; if(wynik < n){ wynik = n; } } cout << wynik; } |
English