Răspuns :
#include<cstdio>
#include<algorithm>
using namespace std;
int n,i,j,k,a[1000];
int main()
{
int m,min,max,am=0,bm=0;
freopen("mgo.in","r",stdin);
freopen("mgo.out","w",stdout);
scanf("%d %d",&n,&k);
for (i=1;i<=k;i++) if (i%2==1)
{
scanf("%d",&m);
a[m]=1;
for (min=m-1;min>0;min--)
if (a[min]==2) continue;
else break;
for (max=m+1;max<n+1;max++)
if (a[max]==2) continue;
else break;
if (a[min]==1) for (min=min+1;min<m;min++)
a[min]=0;
if (a[max]==1) for (max=max-1;max>m;max--)
a[max]=0;
}else
{
scanf("%d",&m);
a[m]=2;
for (min=m-1;min>0;min--)
if (a[min]==1) continue;
else break;
for (max=m+1;max<n+1;max++)
if (a[max]==1) continue;
else break;
if (a[min]==2) for (min=min+1;min<m;min++)
a[min]=0;
if (a[max]==2) for (max=max-1;max>m;max--)
a[max]=0;
}
for (i=1;i<=n;i++) if (a[i]==1) am++;else if (a[i]==2) bm++;
printf("%d %d\n",am,bm);
return 0;
}
#include<algorithm>
using namespace std;
int n,i,j,k,a[1000];
int main()
{
int m,min,max,am=0,bm=0;
freopen("mgo.in","r",stdin);
freopen("mgo.out","w",stdout);
scanf("%d %d",&n,&k);
for (i=1;i<=k;i++) if (i%2==1)
{
scanf("%d",&m);
a[m]=1;
for (min=m-1;min>0;min--)
if (a[min]==2) continue;
else break;
for (max=m+1;max<n+1;max++)
if (a[max]==2) continue;
else break;
if (a[min]==1) for (min=min+1;min<m;min++)
a[min]=0;
if (a[max]==1) for (max=max-1;max>m;max--)
a[max]=0;
}else
{
scanf("%d",&m);
a[m]=2;
for (min=m-1;min>0;min--)
if (a[min]==1) continue;
else break;
for (max=m+1;max<n+1;max++)
if (a[max]==1) continue;
else break;
if (a[min]==2) for (min=min+1;min<m;min++)
a[min]=0;
if (a[max]==2) for (max=max-1;max>m;max--)
a[max]=0;
}
for (i=1;i<=n;i++) if (a[i]==1) am++;else if (a[i]==2) bm++;
printf("%d %d\n",am,bm);
return 0;
}
Vă mulțumim pentru vizita pe site-ul nostru dedicat Informatică. Sperăm că informațiile disponibile v-au fost utile și inspiraționale. Dacă aveți întrebări sau aveți nevoie de suport suplimentar, suntem aici pentru a vă ajuta. Ne face plăcere să vă revedem și vă invităm să adăugați site-ul nostru la favorite pentru acces rapid!