<Java>
プログラミング初心者です。
Atcoder Beginners SelectionのABC083Bの問題なのですが、どこが間違っているのかわからないので教えていただきたいです。
問題:1 以上 N 以下の整数のうち、10 進法での各桁の和が A 以上 B 以下であるものの総和を求めてください。
制約:
・1≤N≤10^4
・1≤A≤B≤36
・入力はすべて整数である
入力:N A B
例:
入力:20 2 5
出力:84
提出したコード:
import java.util.*; public class Main { public static void main(String[] args){ Scanner sc = new Scanner(System.in); int N = sc.nextInt(); int A = sc.nextInt(); int B = sc.nextInt(); List<Integer> arrayList = new ArrayList<Integer>(); int ans = 0; for (int i = 1; i <= N; i++) { int a = i % 10; int b = i / 10; int c = i / 100; int d = i / 1000; int e = i / 10000; int total = a + b + c + d + e; if (total >= A && total <= B) { arrayList.add(i); } } for (int i = 0; i < arrayList.size(); i++) { ans += arrayList.get(i); } System.out.println(ans); } }
回答1件
あなたの回答
tips
プレビュー