This submission is migrated from previous version of oj.uz, which used different machine for grading. This submission may have different result if resubmitted.
#include<iostream>
#include<vector>
#define ll long long
using namespace std;
int main(){
ll l,r;
cin >> l >> r;
//bool bl[l];
vector<ll> rows[r+100];
//for(int i=0; i<l; i++) bl[i] = 0;
for(int i = 0; i<r; i++){
int x; cin >> x;
for(int j=0; j<x; j++){
int w; cin >> w;
rows[i].push_back(w);
}
}
int minb = (l+1)/2;
int maxb = (l+1)/2;
bool bpres = false;
for(int i=0; i<r; i++){
if(rows[i].size()>0){
if(2*rows[i][0]>l){
bpres = true;
int bnum = 2*rows[i][0]-l;
if(bnum%2==0){
int tminb = l/2;
tminb -= bnum/2;
tminb += 1;
minb = min(minb,tminb);
int tmaxb = l/2;
tmaxb += bnum/2;
maxb = max(maxb,tmaxb);
}
else{
int tminb = (l+1)/2;
tminb -= bnum/2;
minb = min(minb,tminb);
int tmaxb = (l+1)/2;
tmaxb += bnum/2;
maxb = max(maxb,tmaxb);
}
}
}
}
if(bpres){
cout << maxb-minb+1;
}
else{
cout << 0;
}
}
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |