AtCoderに登録したら解くべき精選過去問10問の類題をC++で解いてみた(その1)
C, C++の勉強を兼ねて、
AtCoder に登録したら次にやること ~ これだけ解けば十分闘える!過去問精選 10 問 ~
をやっていたのですが、10問終えたので、類題を解いていこうと思います。
まずは、ABC 086 A - Product の類題から。
- 倍数判定
- 3つの数字から3桁の数字を作り出して、4で割り切れるか判定
#include <iostream> using namespace std; int main() { int r,g,b; int integer; cin >> r >> g >> b; r *= 100; g *= 10; integer = r + g + b; if(integer % 4 == 0) { cout << "YES" << endl; } else { cout << "NO" << endl; } return 0; }
- 余り計算
- 500で割った時の余り(=500以下の数値)を出して、それがcoinsの数以下かどうか判定
#include <iostream> using namespace std; int main() { int yen,coins; int remain; cin >> yen; cin >> coins; remain = yen % 500; if(remain <= coins) { cout << "Yes" << endl; } else { cout << "No" << endl; } return 0; }
- 小数点以下の切り上げ
- キャストを使いながら、小数点以下の値がある場合に1繰り上げるように処理してみた
#include <iostream> using namespace std; int main() { int a,b,int_cast_avg; double avg; cin >> a >> b; avg = (a + b) / 2.0; int_cast_avg = (int)avg; if(int_cast_avg < avg) { int_cast_avg++; } cout << int_cast_avg << endl; return 0; }