[Java] SWEA 9229 한빈이와 Spot Mart

Lee GaEun·2025년 7월 24일

[Java] 알고리즘

목록 보기
86/93

9229 한빈이와 Spot Mart 문제 링크

package forStudy;

import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.util.StringTokenizer;

public class SWEA_9229 {
	public static void main(String[] args) throws Exception {
		BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
		int T = Integer.parseInt(br.readLine());
		for(int t=1; t<=T; t++) {
			StringTokenizer st = new StringTokenizer(br.readLine());
			int N = Integer.parseInt(st.nextToken());
			int M = Integer.parseInt(st.nextToken());
			
			int[] arr = new int[N];
			st = new StringTokenizer(br.readLine());
			for(int i=0; i<N; i++) {
				arr[i] = Integer.parseInt(st.nextToken());
			}
			
			int answer = -1;
			int now = 0;
			for(int i=0; i<N; i++) {
				for(int j=i; j<N; j++) {
					if(arr[i]+arr[j] <= M) answer = Math.max(answer, arr[i]+arr[j]);
				}
			}
			
			StringBuilder sb = new StringBuilder();
			sb.append("#").append(t).append(" ").append(answer);
			System.out.println(sb.toString());
		}
	}
}

  • 완탐 : O(n^2)
  • 배열에서 두 개를 뽑을 수 있는 모든 경우의 수를 탐색해서 그 최댓값을 answer에 저장
profile
I will give it my all (๑•̀o•́๑)ง

0개의 댓글