Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <cstdio>
- #define NMax 15024
- using namespace std;
- typedef struct {int lo,hi;} interval;
- int N,T,k;
- interval st[NMax];
- // returneaza 1 daca si numai daca ultimele
- // doua intervale din stiva pot fi unite, caz in care le si uneste
- int uneste()
- {
- if(st[k-1].hi+1==st[k].lo)
- {
- st[k-1].hi=st[k].hi;
- --k;
- return 1;
- }
- else
- if(st[k].hi+1==st[k-1].lo)
- {
- st[k-1].lo=st[k].lo;
- --k;
- return 1;
- }
- return 0;
- }
- int main()
- {
- int i,x;
- freopen("reactii.in","r",stdin);
- freopen("reactii.out","w",stdout);
- scanf("%d %d",&N,&T);
- for (;T;--T)
- {
- k=0;
- for(i=1;i<=N;++i)
- {
- scanf("%d",&x);
- ++k;st[k].lo=x;st[k].hi=x;
- for(;k>1&&uneste(););
- }
- printf("%d\n",(k==1));
- }
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement