Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <stdio.h>
- #include <stdlib.h>
- struct coord {int x; int y;} a[10002];
- int fc(const void *a, const void *b)
- {return ((struct coord *)a)->x - ((struct coord *)b)->x;}
- int main()
- {
- FILE *fi, *fo;
- int m,n,i,j,p,b[5002];
- fi=fopen("bile.in","r");
- fscanf(fi,"%d %d %d",&m,&n,&p);
- for(i=1;i<=p;i++)
- fscanf(fi,"%d %d",&a[i].x,&a[i].y);
- for(i=1;i<=n;i++)
- fscanf(fi,"%d",&b[i]);
- fclose(fi);
- qsort(a+1,p,sizeof a[0],fc);
- for(i=1;i<=p;i++)
- {
- j=a[i].y;
- b[j-1]+=b[j]/2+b[j]%2;
- b[j+1]+=b[j]/2;
- b[j]=0;
- }
- fo=fopen("bile.out","w");
- for(i=1;i<=n;i++)
- fprintf(fo,"%d\n",b[i]);
- fclose(fo);
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement