#include "stdio.h" int main() { //変数を宣言し、配列はforで初期化する。 //役割は、順番に「koboの時速」「師匠の時速」「交差点の数」「交差点の位置(m)」。 int X = 0, Y = 0, N = 0; long A[90]; for (int i = 0; i < 90; i++) { A[i] = 0; } //scanfで変数の値を入力。 //AはforをN回やってとる scanf("%d %d",&X,&Y); scanf("%d",&N); for (int i = 0; i < N; i++) { scanf("%ld", &A[i]); } //時速を秒速に直す。これは小数になりうるので実数型で。 double rX = X/3.6, rY = Y/3.6; //変換できてるか表示テスト //printf("%f %f \n", rX, rY); //0.01秒ずつ進めていってみよう…。 //それぞれXとYの位置。交差点の個数でも見る。 //ただし、判定時のためにXのほうは到達時点でカウント、Yのほうは通過時点でカウント。 double Xin = 0.0, Yin = 0.0; int Xpoint = 0, Ypoint = 0; while (1) { Xin = Xin + rX / 100.0; Yin = Yin + rY / 100.0; if (Yin > A[Ypoint]) Ypoint++; //Xが交差点に到達した際に判定を行う。 if (Xin >= A[Xpoint]) { Xpoint++; if (Ypoint > Xpoint) { printf("NO\n"); break; } if (Xpoint == N - 1) { printf("YES\n"); break; } } } return 0; }