Coding Test (134) 썸네일형 리스트형 [Java] 인사성 밝은 곰곰이 [25192번] https://www.acmicpc.net/problem/25192예제 입력19ENTERpjshwachansolchogahui05lms0806pichuliar4pidstartswoontony9402예제 출력18예제 입력27ENTERpjshwachansolchogahui05ENTERpjshwachansol예제 출력25예제 입력33ENTERlms0806lms0806예제 출력31문제 접근ENTER가 입력된 후 처음 입력된 채팅은 곰곰티콘으로 인사그 외엔 곰곰티콘을 사용하지 않는 기록 ⇒ 곰곰티콘 인사 후 동일한 아이디가 채팅을 칠 수도 있음 → 입력 예제 3문제 해결Set을 이용하여 유저의 아이디를 저장ENTER가 입력되면 Set을 클리어 시킴존재 안할 경우 Set에 추가하고 곰곰티콘의 횟수를 1증가이미 존재.. [Java] 베스트셀러 [1302번] https://www.acmicpc.net/problem/1302예제 입력15toptoptoptopkimtop예제 출력1top예제 입력29tablechairtabletablelampdoorlamptablechair예제 출력2table예제 입력36aaabbb예제 출력3a예제 입력48icecreampeanutspeanutschocolatecandychocolateicecreamapple예제 출력4chocolate예제 입력51soul 예제 출력5soul문제 접근N개의 책의 제목이 입력 됨입력된 책의 제목 중 가장 많이 입력된 것을 출력value가 동일할 경우 사전 순 이름 출력문제 해결TreeMap을 이용하여 책 이름(Key)을 추가이미 존재한다면 수량(Value) 증가MaxValue를 가장 많이 팔린 양 저.. [Java] 팰린드롬 파티션 [2705번] https://www.acmicpc.net/problem/2705예제 입력134720예제 출력14660문제 접근중앙값을 기준으로 좌우가 동일해야 함1 2 3 2 1 ⇒ 1 2 와 2 1로 일치하지 않아 팰린드롬 파티션이 아님1 2 1 3 1 2 3 ⇒ 1 2 1과 1 2 1로 일치하여 팰린드롬 파티션문제 해결N - 2의 값의 중앙값에 +2를 더한 것과, N / 2의 경우의 수를 더해주면 N의 값이 나옴즉, N[6] = N[4] + N[3]의 식이 도출메모리제이션 기법으로 Map을 이용하여 N[i]의 값(경우의 수)을 Map에 저장하고 Map에 있는 값이라면 get으로 리턴슈도 코드static memorizationT(테스트 케이스 저장)for(T번 반복){ Partition(입력값)}Partition(.. [Java] Z [1074번] https://www.acmicpc.net/problem/1074예제 입력12 3 1예제 출력111예제 입력23 7 7예제 출력263예제 입력31 0 0예제 출력30예제 입력44 7 7예제 출력463예제 입력510 511 511예제 출력5262143예제 입력610 512 512예제 출력6786432문제 접근N이 1인 경우에는 순서대로 0, 1, 2, 3을 출력하도록 설정N이 2이상인 경우 2^(N-1)의 크기로 4등분을 한 후 재귀 함수문제 해결하나 하나 순차적으로 진행을 하게 되면 N의 최대값이 15로 2^15으로 32,768 * 32,768의 길이가 되어 재귀 함수로 인한 Stack Overflow가 발생핵심은 구해야 할 row, col을 가지고 몇 사분면에 포함이 되는 지 확인사분면이 확인 되면 다.. [Java] 서로 다른 부분 문자열의 개수 [11478번] https://www.acmicpc.net/problem/11478예제 입력1ababc예제 출력112문제 접근문자열을 입력 받아 1개 ~ 문자열 길이까지의 모든 문자열을 저장단, 겹치는 문자열은 제외하고 서로 다른 것의 개수만 출력문제 해결Set을 이용하여 모든 경우의 수 저장하고 사이즈 출력슈도 코드str(문자열 저장)subSet(중복되지 않는 Set 선언)for(start = 0 ~ 문자열 길이 전까지 반복){ for(end = start+1 ~ 문자열 길이까지 반복){ set에 str.substring(start, end) 저장 }}subSet 사이즈 출력코딩하기public static void main(String[] args) throws Exception{ BufferedReader b.. [Java] 파일 정리 [20291번] https://www.acmicpc.net/problem/20291예제 입력18sbrus.txtspc.spcacm.icpckorea.icpcsample.txthello.worldsogang.spcexample.txt예제 출력1icpc 2spc 2txt 3world 1문제 접근확장자를 기준으로 확장자 이름과 해당 확장자가 몇 개인지 출력무조건 온점( . )으로 확장자 구분확장자의 이름 순으로 내림차순 정렬문제 해결트리맵으로 쉽게 풀릴 것 같음N번만큼 반복문을 돌려서 확장자를 Map에 추가, 존재한다면 Value를 1증가슈도 코드 트리맵 선언fileCont (파일 개수 저장)for(fileCont번 반복){ str(파일 이름 저장) extension = str.subString(str.indexOf(".").. [Java] 회사에 있는 사람 [7785번] 예제 입력14Baha enterAskar enterBaha leaveArtem enter예제 출력1AskarArtem문제 접근출입 기록의 수가 최대 10$^6$이므로 시간 복잡도가 O(N$^2$)이면 1조로 시간 초과enter와 leave가 찍힌 사원은 퇴근한 사원대소문자가 다른 경우 다른 사람문제 해결동명이인이 없으니 Set으로 저장하고 한 번 더 나올 경우 삭제슈도 코드N(출입 기록 개수)Set overWork(직원 저장 자료구조)for(N번 반복){ emp에 직원 이름만 저장 if(overWork에 포함된 직원이면){ 제거 continue; } set에 추가}set에 있는 직원 전체 출력코딩하기public static void main(String[] args) throws Exception{ .. [Java] 수 이어 쓰기 1 [1748번] https://www.acmicpc.net/problem/1748예제 입력15예제 출력15예제 입력215예제 출력221예제 입력3120예제 출력3252문제 접근1 ~ N까지 숫자를 이어 붙혀야 하는데, N이 100,000,000이기 때문에 문제가 발생일반적인 사고 방식으로 StringBuilder를 이용하여 이어 붙일 경우 메모리 초과 발생수학적 연산이 필요문제 해결일의 자리, 십의 자리, 백의 자리마다 정해진 범위가 있고 길이가 고정일의 자리 ⇒ 1 ~ 9, 길이 1십의 자리 ⇒ 10 ~ 99, 길이 2백의 자리 ⇒ 100 ~ 999, 길이 3start와 end의 값을 1과 9로 셋팅을 하고 입력받은 N보다 큰 지, 작은지로 판별계산이 한 번 끝날 때마다 start와 end의 범위 증가1의 자리 ⇒ s.. 이전 1 ··· 11 12 13 14 15 16 17 다음