AtCoder Beginner Contest 153 B - Common Raccoon vs Monster
最近のABCではこの辺の問題は早解き選手権ですね、ねむーです。
今回はAtCoder(https://atcoder.jp/contests/abc153/tasks/abc153_b)にて開催されました、AtCoder Beginner Contest 153 B問題「B - Common Raccoon vs Monster」の問題と僕との戦闘記です。
0.はじめに
1.問題文
アライグマはモンスターと戦っています。
モンスターの体力は H です。
アライグマは N 種類の必殺技を使うことができ、 i 番目の必殺技を使うとモンスターの体力を A i 減らすことができます。 必殺技を使う以外の方法でモンスターの体力を減らすことはできません。
モンスターの体力を 0 以下にすればアライグマの勝ちです。
アライグマが同じ必殺技を 2 度以上使うことなくモンスターに勝つことができるなら Yes を、できないなら No を出力してください。
2.制約
- 1 ≤ H ≤ 109
- 1 ≤ N ≤ 105
- 1 ≤ A i ≤ 104
- 入力中のすべての値は整数である。
3.入出力例
- 入力
211 5 31 41 59 26 53
- 出力
No
4.初見の感想
- 配列Aの和がHを超えているかどうかで条件分岐です
5.学びポイント
- C#では.sum()で和が計算できます
6.コードと簡単な解説
using System; using System.Collections.Generic; using System.Linq; class Program { public static void Main() { string[] input = Console.ReadLine().Split(); long H = int.Parse(input[0]); long N = int.Parse(input[1]); input = Console.ReadLine().Split(); long[]A = new long[N]; for(long i = 0; i < N; i++) { A[i] = int.Parse(input[i]); } long sum = A.Sum(); if (H <= sum) { Console.WriteLine("Yes"); } else { Console.WriteLine("No"); } } }
7.最後に
少し問題解釈に時間かかりましたので反省です…