[JAVA/백준] SW 역량 테스트 준비-연습 | 브루트 포스: 수들의 합 2

👀 문제

https://www.acmicpc.net/problem/2003

👊 도전

1. 설계

  1. 0부터 n-1을 시작점으로 하여 j개 더했을 때 m이 되는 개수를 센다.

2. 구현 (성공 코드)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
import java.util.Scanner;
/**
 * @author HEESOO
 *
 */
public class Main {
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		Scanner scan=new Scanner(System.in);
		int n=scan.nextInt();
		int m=scan.nextInt();
		int[] array=new int[n];
		for(int i=0;i<n;i++)
			array[i]=scan.nextInt();
		
		int cnt=0;
		for(int i=0;i<n;i++) {
			int sum=0;
			for(int j=i;j<n;j++) {
				sum+=array[j];
				if(sum==m) {
					cnt++;
					break;
				}
			}
		}
		
		System.out.println(cnt);
	}
}

3. 결과

실행결과 🤟 성공 🤟

4. 설명

  1. i번째 수부터 j번째 수까지의 합을 구한다
    • i는 0부터 n-1까지 모든 경우를 다 확인한다.
    • i부터 j까지의 합이 m과 같다면 cnt++하고 다음 i 확인을 위해 break로 for j를 탈출한다.

👏 해결 완료!