본문 바로가기

Coding Test

(131)
[Java] 5단계. 영단어 암기는 괴로워 [20920번] https://www.acmicpc.net/problem/20920예제 입력17 4appleantsandappleappendsandsand예제 출력1sandappleappend예제 입력212 5appearanceappendattendanceswimswiftswiftswiftmousewalletmouseiceage예제 출력2swiftmouseappearanceattendanceappendwallet문제 접근영어 단어장의 순서는 다음의 우선 순위를 차례로 적용 자주 나오는 단어일수록 앞에 배치 해당 단어의 길이가 길 수록 앞에 배치 알파벳 사전 순으로 앞에 있는 단어일수록 앞에 배치 M 보다 짧은 길이의 단어는 외울 수 있어, 길이가 M 이상인 단어만 외움 입력 첫째 줄 : 단어의 개수 N과 외울 단어의 길..
[Java] 4단계. 통계학 [2108번] 항해99를 하면서 풀어봤던 문제지만 다시 한 번 풀어보기https://www.acmicpc.net/problem/2108예제 입력15138-22예제 출력122110예제 입력214000예제 출력24000400040000예제 입력35-1-2-3-1-2예제 출력3-2-2-12예제 입력4300-1예제 출력40001문제 접근입력 첫째 줄 : 수의 개수 N (1 ~ N번째 줄 : 정수( -4,000 출력 첫째 줄 : 산술평균 출력 (소수점 첫째 자리 반올림) 둘째 줄 : 중앙값 출력 셋째 줄 : 최빈값 출력 (여러 개 있을 경우 두 번째로 작은 값) 넷째 줄 : 범위 출력 문제 해결배열로 저장 후 정렬산술 평균 : 모두 더한 값 / N = 결과 반올림중앙값 : 배열 길이(N) / 2 인덱스의 값최빈값 : 배열의 최..
[Java] 3단계. 붙임성 좋은 총총이 [26069번] https://www.acmicpc.net/problem/26069예제 입력112bnb2011 chansolchansol chogahui05chogahui05 jthisjthis ChongChongjthis jyheo98jyheo98 lms0806lms0806 pichuliapichulia pjshwapjshwa r4pidstartr4pidstart swoonswoon tony9402tony9402 bnb2011예제 출력110문제 접근사람들이 만난 기록이 시간 순서대로 N개 주어짐 총총이를 만나면 무지개 댄스가 옮음 입력 첫째 줄 : 사람들이 만난 기록 수 N(1 ~ N번째 줄 : A와 B가 만난 기록 영어 대소문자 구분 필요 최대 길이 20 총총의 이름은 ChongChong 동명이인은 없음 출력 무지개..
[Java] 2단계. 인사성 밝은 곰곰이 [25192번] 항해99를 하면서 풀어봤던 문제지만 다시 한 번 풀어보기https://www.acmicpc.net/problem/25192예제 입력19ENTERpjshwachansolchogahui05lms0806pichuliar4pidstartswoontony9402예제 출력18예제 입력27ENTERpjshwachansolchogahui05ENTERpjshwachansol예제 출력25예제 입력33ENTERlms0806lms0806예제 출력31문제 접근ENTER : 새로운 사람이 채팅방에 입장 그 외 : 유저 닉네임 ENTER 이후 첫 닉네임 = 인사 인사 이후 동일 닉네임 = 일반 채팅 입력 첫째 줄 : 채팅방 로그 N (1 ~ N번째 줄 : ENTER or 닉네임 (1 첫 로그는 반드시 ENTER 출력 곰곰티콘(인사..
[Java] 1단계. 약수 [1037번] https://www.acmicpc.net/problem/1037예제 입력124 2예제 출력124 2예제 입력212예제 출력24예제 입력363 4 2 12 6 8예제 출력324예제 입력41414 26456 2 28 13228 3307 7 23149 8 6614 46298 56 4 92596예제 출력4185192문제 접근진짜 약수 : 1과 자기 자신을 제외한 나머지 약수 입력 첫째 줄 : 진짜 약수의 개수 N(1둘째 줄 : N의 진짜 약수들이 공백으로 주어짐 ( 2 출력 N 출력 항상 32비트 부호있는 정수로 표현 가능(int 범위 이내라는 뜻)문제 해결첫 번째 값 * 마지막 값 / 두 번째 값 * 마지막 -1번째 값 / ... = N단, 진짜 약수가 랜덤으로 주어지기 때문에 정렬 필요둘 째줄을 배열로 만..
[Java] 5단계. 다리 놓기 [1010번] https://www.acmicpc.net/problem/1010예제 입력132 21 513 29예제 출력11567863915문제 접근입력 첫째 줄 : 테스트 케이스 T ~ T번째 줄 : 서쪽 사이트 개수 N, 동쪽 사이트 개수 M(0 출력 각 테스트 케이스에서 조건에 맞게 다리를 지을 수 있는 경우의 수 출력문제 해결서쪽 사이트와 동쪽 사이트가 1:1 매핑이 되어야 함 → 한 사이트가 반대편 사이트에 여러 개 다리 설치 불가서쪽 사이트 수(N) 이기 때문에 결국 mCn의 조합 문제여러 개의 케이스가 주어지기 때문에 미리 dp[30][30]의 배열을 만들고, 규칙을 적용하고 2중 for문으로 점화식 사용dp[i][i] = 1dp[i][0] = 1dp[i][j] = dp[i - 1][j] + dp[i - ..
[Java] 4단계. 이항 계수 1 [10872번] https://www.acmicpc.net/problem/11050예제 입력15 2예제 출력110문제 접근이항계수란 주어진 집합에서 원하는 개수만큼 순서없이 뽑는 조합의 개수를 의미순서가 있다는 것은 순열, 순서가 없다는 것은 조합5개 중 2개를 선택(5C2) → 5 * 4 * 3 * 2 * 1 / 3 * 2 * 1 * 2 * 1 = 120 / 12 = 조합 경우의 수는 10개입력 N과 K (1 출력 (5, 2) 이항 계수 출력 문제 해결5개 중 2개를 선택한다는 것은 다음과 같이 볼 수 있음가장 마지막 데이터를 선택 → 이미 1개가 선택되어 4개 중 1개를 선택가장 마지막 데이터를 선택하지 않음 → 4개 중 2개를 선택즉, 5개 중 2개를 선택한 경우의 수 = 4개 중 1개를 선택한 경우의 수 + 4개..
[Java] 3단계. 팩토리얼 [10872번] https://www.acmicpc.net/problem/10872예제 입력110예제 출력13628800예제 입력20예제 출력21문제 접근입력 N (0 12) 출력 N 팩토리얼 출력 문제 해결문제를 푸는 방법은 2가지입력받은 N ~ 1까지 모두 곱하는 반복문 사용재귀 함수 사용반복문 풀이 [메모리 : 14,084 KB / 시간 : 104 ms]public static void main(String[] args) throws IOException{ BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); int N = Integer.parseInt(br.readLine()); int sum = 1; for(in..