AtCoder

【C++解説】A – Robot Balance(AtCoder Beginner Contest 431)を解いてみました!

mintson
スポンサーリンク

本日の動画

今回はAtCoderの問題をC++で解いてみました!

この問題は簡単な四則演算で解けるのでぜひ試してみてください!

A – Robot Balance(AtCoder Beginner Contest 431)

問題としては高橋君がロボットを作り頭と体でパーツが分かれています。
Hグラムの頭がBグラムの体より大きかったら崩れます。

そしてBグラムをあとどれくらい増やせば支えられるのかという問題です。

C++で解いてみた!

今回の場合はif分を使ってHがBより小さい場合は差分であるH-Bを出力する形を取っています。

#include <iostream>

using namespace std;
int main(){
    int H, B;
    cin >> H >> B;
    
    if(H > B) cout << H - B << endl;
    else cout << "0" << endl;
    
    return 0;
}

それ以外の場合は0と出力する形で簡単に解けました。

ですが、別の解き方として二つの数のMaxを比べる方法があります。

cout << max(0, H - B) << endl;

これを使うと体の方が大きかったら0の方が大きくなるため出力は0となり、if分を書かずにコード量を少ない方法で行けます。

まとめ

競技プログラミングはこのように解き方が一つでないところが面白いなと思いました。

ABOUT ME
夜猫ミント
夜猫ミント
クリエイターです。
色んな創作活動をしています!
スポンサーリンク
記事URLをコピーしました