AtCoder Beginner Contest 059/AtCoder Regular Contest 072

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

A - Three-letter acronym

C++14

#include<bits/stdc++.h>
using namespace std;

 
int main(){
    char a[10],b[10],c[10];
    scanf("%s %s %s",&a,&b,&c);
    printf("%c%c%c\n",a[0]-32,b[0]-32,c[0]-32);
 
    return 0;
}

それぞれ1文字目だけ出力。

B - Comparison

C++!4

#include<bits/stdc++.h>
using namespace std;
 
int main(){
    char a[102],b[102];
    scanf("%s",a);
    scanf("%s",b);
    if (strlen(a)>strlen(b)) {
        printf("GREATER\n");
        return 0;
    } else if (strlen(a)<strlen(b)) {
        printf("LESS\n");
        return 0;
    }
    for (int i=0;i<strlen(a);i++) {
        if (a[i]-0>b[i]-0) {
            printf("GREATER\n");
            return 0;
        } else if (a[i]-0<b[i]-0) {
            printf("LESS\n");
            return 0;
        }
    }
    printf("EQUAL\n");
    return 0;
}

先頭0があり得ないので文字列長で判定か、同じ長さなら先頭から差分が出るまで比較。

C - Sequence

Python3

n=int(input())
l=[int(i) for i in input().split()]
chk1=ans1=chk2=ans2=0
 
for a,i in enumerate(l):
    chk1+=i
    chk2+=i
    if a%2:
        if chk1<=0:
            ans1+=1-chk1
            chk1=1
        if chk2>=0:
            ans2+=chk2+1
            chk2=-1
    else:
        if chk1>=0:
            ans1+=1+chk1
            chk1=-1
        if chk2<=0:
            ans2+=1-chk2
            chk2=1
print(min(ans1,ans2))

加工先を+-+-...にするか、-+-+...にするかでシミュ。符号を変えるときは最小操作回数のために+1 or -1想定で。