AtCoder Beginner Contest 086/AtCoder Regular Contest 089

はい。
https://beta.atcoder.jp/contests/abc086

A - Product

Python3

a,b=map(int,input().split())
print('Odd' if (a*b)%2 else 'Even')

%2で偶奇の判定を。。

B - 1 21

C++14

#include<bits/stdc++.h>
using namespace std;
 
int main(){
    int a,b,tmp;
    scanf("%d %d",&a,&b);
    if (b==b%10) {
        tmp=a*10+b;
    } else if (b==b%100) {
        tmp=a*100+b;
    } else {
        tmp=a*1000+b;
    }
    for (int i=1;i<1000;i++){
        if (i*i==tmp) {
            printf("Yes\n");
            return 0;
        }
    }
    printf("No\n");
    return 0;
}

sqrtとかは誤差が怖いので適当に自乗して調べたほうがいいと思う。多分。。

C - Traveling

C++14

#include<bits/stdc++.h>
using namespace std;
 
int main(){
    int n,t,x,y,tmp;
    int chk[3]={0,0,0};
    scanf("%d",&n);
    for (int i=0;i<n;i++) {
        scanf("%d %d %d",&t,&x,&y);
        tmp=abs(x-chk[1])+abs(y-chk[2]);
        if (tmp>t-chk[0] || ((t-chk[0])-tmp)%2) {
            printf("No\n");
            return 0;
        }
        chk[0]=t;
        chk[1]=x;
        chk[2]=y;
    }
    printf("Yes\n");
    return 0;
}

時刻差より縦横移動距離が大きいと移動が間に合わず不可。移動可能範囲内でも時刻余りが0,2,4...でないと丁度の時間になるように調節できなくて不可になる。