頭良くなりたい人

文系大学生shadeのブログです。競技プログラミングや人文学の話題,受験ネタなど。

ABC059 B - Comparison

問題はこちら atcoder.jp

方針

まず A,B の桁数を比較し,それが同じ場合には大きい位の値から比較していきます。

コード

#include <bits/stdc++.h>
using namespace std;
int compare(string x,string y,int i);
 
int main(){
    string a,b;
    cin>>a>>b;
 
    int i=0;
 
    if(a.size()>b.size()){
        cout<<"GREATER"<<endl;
    }else if(a.size()<b.size()){
        cout<<"LESS"<<endl;
    }else{
        compare(a,b,i);
    }
}
 
int compare(string x,string y,int i){
    if(x[i]==y[i] && i+1<x.size()){
        i++;
        compare(x,y,i);
    }else if(x[i]>y[i]){
        cout<<"GREATER"<<endl;
    }else if(x[i]<y[i]){
        cout<<"LESS"<<endl;
    }else{
        cout<<"EQUAL"<<endl;
    }
}