# | Time | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
13262 | baneling100 | Ants (IZhO12_ants) | C++98 | 0 ms | 1084 KiB |
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 <stdio.h>
#define K_MAX 100
struct ant {
int X;
int Y;
int D;
} Ant[K_MAX+1];
int W, H, K, T, Dx[5]={0,1,0,-1,0}, Dy[5]={0,0,1,0,-1};
void input(void) {
int i, in1, in2, in3;
scanf("%d %d %d %d",&W,&H,&K,&T);
for(i=1 ; i<=K ; i++) {
scanf("%d %d %d",&in1,&in2,&in3);
Ant[i]={in1,in2,in3};
}
}
void output(void) {
int i, j, cnt;
for(i=1 ; i<=K ; i++) {
if(Ant[i].D%2)
cnt=T%(2*W);
else
cnt=T%(2*H);
for(j=1 ; j<=cnt ; j++) {
Ant[i].X+=Dx[Ant[i].D];
Ant[i].Y+=Dy[Ant[i].D];
if(Ant[i].X==0 || Ant[i].X==W || Ant[i].Y==0 || Ant[i].Y==H)
Ant[i].D=(Ant[i].D+1)%4+1;
}
printf("%d %d %d\n",Ant[i]);
}
}
int main(void) {
input();
output();
return 0;
}
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |