#include <stdio.h>
#define BALL_DETECT 450
#define WHITE_LINE 800
// ダミー関数
void move(int left, int right)
{
printf("move(%d, %d)\n", left
, right
); }
void kick()
{
}
int main()
{
int ball_right = 500;
int ball_center = 300;
int ball_left = 700;
int range = 460;
int floor_left = 200;
int floor_right = 300;
// 白線回避
if (floor_left > WHITE_LINE || floor_right > WHITE_LINE)
{
move(-50, -50);
move(-50, 50);
return 0;
}
// 左
if (ball_left > ball_center &&
ball_left > ball_right &&
ball_left > BALL_DETECT)
{
move(-30, 30);
}
// 右
else if (ball_right > ball_center &&
ball_right > ball_left &&
ball_right > BALL_DETECT)
{
move(30, -30);
}
// 正面
else if (ball_center > BALL_DETECT)
{
move(50, 50);
if (range > 450)
{
kick();
}
}
// 見失い
else
{
move(30, -30);
}
return 0;
}
I2luY2x1ZGUgPHN0ZGlvLmg+CgojZGVmaW5lIEJBTExfREVURUNUIDQ1MAojZGVmaW5lIFdISVRFX0xJTkUgODAwCgovLyDjg4Djg5/jg7zplqLmlbAKdm9pZCBtb3ZlKGludCBsZWZ0LCBpbnQgcmlnaHQpCnsKICAgIHByaW50ZigibW92ZSglZCwgJWQpXG4iLCBsZWZ0LCByaWdodCk7Cn0KCnZvaWQga2ljaygpCnsKICAgIHByaW50Zigia2ljayFcbiIpOwp9CgppbnQgbWFpbigpCnsKICAgIGludCBiYWxsX3JpZ2h0ICA9IDUwMDsKICAgIGludCBiYWxsX2NlbnRlciA9IDMwMDsKICAgIGludCBiYWxsX2xlZnQgICA9IDcwMDsKICAgIGludCByYW5nZSAgICAgICA9IDQ2MDsKCiAgICBpbnQgZmxvb3JfbGVmdCAgPSAyMDA7CiAgICBpbnQgZmxvb3JfcmlnaHQgPSAzMDA7CgogICAgLy8g55m957ea5Zue6YG/CiAgICBpZiAoZmxvb3JfbGVmdCA+IFdISVRFX0xJTkUgfHwgZmxvb3JfcmlnaHQgPiBXSElURV9MSU5FKQogICAgewogICAgICAgIG1vdmUoLTUwLCAtNTApOwogICAgICAgIG1vdmUoLTUwLCA1MCk7CiAgICAgICAgcmV0dXJuIDA7CiAgICB9CgogICAgLy8g5bemCiAgICBpZiAoYmFsbF9sZWZ0ID4gYmFsbF9jZW50ZXIgJiYKICAgICAgICBiYWxsX2xlZnQgPiBiYWxsX3JpZ2h0ICYmCiAgICAgICAgYmFsbF9sZWZ0ID4gQkFMTF9ERVRFQ1QpCiAgICB7CiAgICAgICAgbW92ZSgtMzAsIDMwKTsKICAgIH0KCiAgICAvLyDlj7MKICAgIGVsc2UgaWYgKGJhbGxfcmlnaHQgPiBiYWxsX2NlbnRlciAmJgogICAgICAgICAgICAgYmFsbF9yaWdodCA+IGJhbGxfbGVmdCAmJgogICAgICAgICAgICAgYmFsbF9yaWdodCA+IEJBTExfREVURUNUKQogICAgewogICAgICAgIG1vdmUoMzAsIC0zMCk7CiAgICB9CgogICAgLy8g5q2j6Z2iCiAgICBlbHNlIGlmIChiYWxsX2NlbnRlciA+IEJBTExfREVURUNUKQogICAgewogICAgICAgIG1vdmUoNTAsIDUwKTsKCiAgICAgICAgaWYgKHJhbmdlID4gNDUwKQogICAgICAgIHsKICAgICAgICAgICAga2ljaygpOwogICAgICAgIH0KICAgIH0KCiAgICAvLyDopovlpLHjgYQKICAgIGVsc2UKICAgIHsKICAgICAgICBtb3ZlKDMwLCAtMzApOwogICAgfQoKICAgIHJldHVybiAwOwp9