#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#define NORTH 0
#define EAST 1
#define SOUTH 2
#define WEST 3
#define LEFT 0
#define STRAIGHT 1
#define RIGHT 2
#define SIZE 10
#define CARTMAX 10
int map[SIZE][SIZE];
struct {
int i;
int j;
int facing;
int inturn;
} cart[CARTMAX];
int cartindex;
int main(void) {
for(int i=0;i<SIZE;i++)
{
for(int j=0;j<SIZE;j++)
}
for(int i=0;i<SIZE;i++)
{
for(int j=0;j<SIZE;j++)
{
switch(map[i][j])
{
case '>':
map[i][j]='-';
cart[cartindex].i=i;
cart[cartindex].j=j;
cart[cartindex].facing=WEST;
cart[cartindex].inturn=0;
cartindex++;
break;
case '<':
map[i][j]='-';
cart[cartindex].i=i;
cart[cartindex].j=j;
cart[cartindex].facing=EAST;
cart[cartindex].inturn=0;
cartindex++;
break;
case 'v':
map[i][j]='|';
cart[cartindex].i=i;
cart[cartindex].j=j;
cart[cartindex].facing=SOUTH;
cart[cartindex].inturn=0;
cartindex++;
break;
case '^':
map[i][j]='|';
cart[cartindex].i=i;
cart[cartindex].j=j;
cart[cartindex].facing=NORTH;
cart[cartindex].inturn=0;
cartindex++;
break;
}
}
}
return 0;
}
I2luY2x1ZGUgPHN0ZGlvLmg+CiNpbmNsdWRlIDxzdHJpbmcuaD4KI2luY2x1ZGUgPHN0ZGxpYi5oPgoKI2RlZmluZSBOT1JUSCAwCiNkZWZpbmUgRUFTVCAxCiNkZWZpbmUgU09VVEggMgojZGVmaW5lIFdFU1QgMwoKI2RlZmluZSBMRUZUIDAKI2RlZmluZSBTVFJBSUdIVCAxCiNkZWZpbmUgUklHSFQgMgoKI2RlZmluZSBTSVpFIDEwCiNkZWZpbmUgQ0FSVE1BWCAxMAoKaW50IG1hcFtTSVpFXVtTSVpFXTsKc3RydWN0IHsKCWludCBpOwoJaW50IGo7CglpbnQgZmFjaW5nOwoJaW50IGludHVybjsKfSBjYXJ0W0NBUlRNQVhdOwppbnQgY2FydGluZGV4OwoKaW50IG1haW4odm9pZCkgewoJZm9yKGludCBpPTA7aTxTSVpFO2krKykKCXsKCQlmb3IoaW50IGo9MDtqPFNJWkU7aisrKQoJCQltYXBbaV1bal09ZmdldGMoc3RkaW4pOwoJCWZnZXRjKHN0ZGluKTsKCX0KCQoJZm9yKGludCBpPTA7aTxTSVpFO2krKykKCXsKCQlmb3IoaW50IGo9MDtqPFNJWkU7aisrKQoJCXsKCQkJc3dpdGNoKG1hcFtpXVtqXSkKCQkJewoJCQkJY2FzZSAnPic6CgkJCQkJbWFwW2ldW2pdPSctJzsKCQkJCQljYXJ0W2NhcnRpbmRleF0uaT1pOwoJCQkJCWNhcnRbY2FydGluZGV4XS5qPWo7CgkJCQkJY2FydFtjYXJ0aW5kZXhdLmZhY2luZz1XRVNUOwoJCQkJCWNhcnRbY2FydGluZGV4XS5pbnR1cm49MDsKCQkJCQljYXJ0aW5kZXgrKzsKCQkJCWJyZWFrOwoKCQkJCWNhc2UgJzwnOgoJCQkJCW1hcFtpXVtqXT0nLSc7CgkJCQkJY2FydFtjYXJ0aW5kZXhdLmk9aTsKCQkJCQljYXJ0W2NhcnRpbmRleF0uaj1qOwoJCQkJCWNhcnRbY2FydGluZGV4XS5mYWNpbmc9RUFTVDsKCQkJCQljYXJ0W2NhcnRpbmRleF0uaW50dXJuPTA7CgkJCQkJY2FydGluZGV4Kys7CgkJCQlicmVhazsKCgkJCQljYXNlICd2JzoKCQkJCQltYXBbaV1bal09J3wnOwoJCQkJCWNhcnRbY2FydGluZGV4XS5pPWk7CgkJCQkJY2FydFtjYXJ0aW5kZXhdLmo9ajsKCQkJCQljYXJ0W2NhcnRpbmRleF0uZmFjaW5nPVNPVVRIOwoJCQkJCWNhcnRbY2FydGluZGV4XS5pbnR1cm49MDsKCQkJCQljYXJ0aW5kZXgrKzsKCQkJCWJyZWFrOwoKCQkJCWNhc2UgJ14nOgoJCQkJCW1hcFtpXVtqXT0nfCc7CgkJCQkJY2FydFtjYXJ0aW5kZXhdLmk9aTsKCQkJCQljYXJ0W2NhcnRpbmRleF0uaj1qOwoJCQkJCWNhcnRbY2FydGluZGV4XS5mYWNpbmc9Tk9SVEg7CgkJCQkJY2FydFtjYXJ0aW5kZXhdLmludHVybj0wOwoJCQkJCWNhcnRpbmRleCsrOwoJCQkJYnJlYWs7CgkJCQkKCQkJfQoJCX0KCX0KCQoJcHJpbnRmKCIlZCIsY2FydGluZGV4KTsKCQoJcmV0dXJuIDA7Cn0K