목록분류 전체보기 (157)
원하는 것은 뭐든지
문제풀이숫자 카드뭉치를 준다.다른 숫자 뭉치를 주고 해당 값이 숫자 카드뭉치에 있는지 확인하는 문제이다.당연히 그냥 for문 돌려서 확인하는 것이면 시간초과가 난다.이분탐색으로 풀면 된다.제출 - 정답import java.util.*;import java.io.*;public class Main { public static void main(String[] args) throws IOException{ BufferedReader br = new BufferedReader( new InputStreamReader(System.in)); int n = Integer.parseInt(br.readLine()); int[] nA..
문제풀이들어는 본 것 같은 H-Index 말로만 보면 헷갈려서 예제를 보면서 이해하는 게 좋아 보인다.일단 계산 방법은 발표된 논문 n이 중 h번 이상 인용된 논문이 h 편 이상나머지 논문이 h번 이하로 인용 (위에 기준이랑 겹치는 게 아닌지;;)이면 이 사람의 H-Index는 h인 것이다. 1번 예제입력 : [3,0,6,1,5]0번 이상 인용된 논문은 5편, 나머지 논문은 없음1번 이상 인용된 논문은 4편, 나머지 논문은 하나2번 이상 인용된 논문은 3편, 나머지 논문은 둘3번 이상 인용된 논문은 3편, 나머지 논문은 셋4번 이상 인용된 논문은 2편.. 탈락return 값은 32번 예제입력: [1,2,3,4,5,6,7,8,9]0번 이상 인용된 논문은 9편, 나머지 논문은 없음1번 이상 인용된 논문은 9..
문제풀이입력으로 카드뭉치 두 개와 목푯 값이 String 배열로 주어진다.카드뭉치에서 목표값이 되도록 카드를 조합하면 되는데, 카드뭉치에서 카드를 꺼낼 때는 정해진 순서를 바꿀 수 없고 다른 뭉치로 넘어가려면 해당 카드뭉치에서 카드를 사용해야 한다. goal 배열에서 하나씩 빼서 카드 뭉치를 살펴보고 없다면 "No"를 출력하고 goal배열에 있는 값이 모두 사용된다면 "Yes"를 출력하면 된다. 제출 1 - 오답import java.util.*;class Solution { public String solution(String[] cards1, String[] cards2, String[] goal) { int idx1 = 0; int idx2 = 0; int ..
문제풀이명령어가 String 배열로 들어온다.명령어로는 "I"(INSERT), "D"(DELETE)가 있다.INSERT는 말 그대로 정수를 입력하면 되고, DELETE로는 1이 들어오면 최댓값을 지우고 -1이 들어오면 최솟값을 지운다. 제출 1 - 오답import java.util.*;class Solution { public int[] solution(String[] operations) { PriorityQueue heap = new PriorityQueue(); List list = new ArrayList(); list.add(Integer.MIN_VALUE); for(String str : operations){ ..