백준 27968 '사사의 사차원 사탕 봉지'

Bonwoong Ku·2023년 9월 3일
0

알고리즘 문제풀이

목록 보기
18/110

아이디어

코드

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

public class Main {
	static BufferedReader rd = new BufferedReader(new InputStreamReader(System.in));
	static StringBuilder sb = new StringBuilder();
	static StringTokenizer tk = null;

	static int N, M, curIdx;
	static long cur;
	static int[] A;
	static long[] Aacc;
	
	public static void main(String[] args) throws Exception {
		tk = new StringTokenizer(rd.readLine());
		N = Integer.parseInt(tk.nextToken());
		M = Integer.parseInt(tk.nextToken());
		
		A = new int[M+1];
		Aacc = new long[M+1];
		tk = new StringTokenizer(rd.readLine());
		for (int i=1; i<=M; i++) {
			A[i] = Integer.parseInt(tk.nextToken());
			Aacc[i] = Aacc[i-1] + A[i];
		}
		for (int i=1; i<=N; i++) {
			long B = Long.parseLong(rd.readLine());
			int idx = Arrays.binarySearch(Aacc, B);
			int ans;
			if (idx > 0) {
				ans = idx;
			}
			else {
				ans = -(idx + 1);
			}
			
			if (ans > M)
				sb.append("Go away!\n");
			else
				sb.append(ans).append('\n');
		}

		System.out.println(sb);
	}
}

메모리 및 시간

  • 메모리: 74096 KB
  • 시간: 752 ms

리뷰

  • 처음에 문제 이해를 잘못하는 바람에 골때렸던 문제
profile
유사 개발자

0개의 댓글