일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- 백준
- 자바
- 알고리즘
- javascript
- 코테
- 자바스크립트
- AtoZ0403
- 자료구조
- array
- spring
- mybatis
- 스텍
- NestJS
- stack
- 정렬
- 콜백지옥
- 코테준비
- 그리디알고리즘
- 프로그래머스
- 중간 평균값 구하기
- java
- 배열
- 인프런
- 카카오
- 삼성
- 코딩테스트
- 삼성소프트웨어아카데미
- SWEA
- 코딩
- js
- Today
- Total
목록코딩테스트 준비 (82)
개발에 AtoZ까지
문제 3 6 9 게임을 프로그램으로 제작중이다. 게임 규칙은 다음과 같다. 1. 숫자 1부터 순서대로 차례대로 말하되, “3” “6” “9” 가 들어가 있는 수는 말하지 않는다. 1 2 3 4 5 6 7 8 9… 2. "3" "6" "9"가 들어가 있는 수를 말하지 않는대신, 박수를 친다. 이 때, 박수는 해당 숫자가 들어간 개수만큼 쳐야 한다. 예를 들어 숫자 35의 경우 박수 한 번, 숫자 36의 경우 박수를 두번 쳐야 한다. 입력으로 정수 N 이 주어졌을 때, 1~N 까지의 숫자를 게임 규칙에 맞게 출력하는 프로그램을 작성하라. 박수를 치는 부분은 숫자 대신, 박수 횟수에 맞게 “-“ 를 출력한다. 여기서 주의해야 할 것은 박수 한 번 칠 때는 - 이며, 박수를 두 번 칠 때는 - - 가 아닌 --..
문제 연월일 순으로 구성된 8자리의 날짜가 입력으로 주어진다. 해당 날짜의 유효성을 판단한 후, 날짜가 유효하다면 [그림1] 과 같이 ”YYYY/MM/DD”형식으로 출력하고, 날짜가 유효하지 않을 경우, -1 을 출력하는 프로그램을 작성하라. 연월일로 구성된 입력에서 월은 1~12 사이 값을 가져야 하며 일은 [표1] 과 같이, 1일 ~ 각각의 달에 해당하는 날짜까지의 값을 가질 수 있다. ※ 2월의 경우, 28일인 경우만 고려한다. (윤년은 고려하지 않는다.) [입력] 입력은 첫 줄에 총 테스트 케이스의 개수 T가 온다. 다음 줄부터 각 테스트 케이스가 주어진다. [출력] 테스트 케이스 t에 대한 결과는 “#t”을 찍고, 한 칸 띄고, 정답을 출력한다. (t는 테스트 케이스의 번호를 의미하며 1부터 시..
문제 하나의 자연수를 입력 받아 각 자릿수의 합을 계산하는 프로그램을 작성하라. [제약 사항] 자연수 N은 1부터 9999까지의 자연수이다. (1 ≤ N ≤ 9999) [입력] 입력으로 자연수 N이 주어진다. [출력] 각 자릿수의 합을 출력한다. 예시 더보기 풀이 import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; public class Solution { public static void main(String[] args) { /* * 1) N을 문자열로 바꾸고 2) 그 문자를 자릿수마다 split해주고 3) int로 변환해서 계산해주는 방법 * 1) N이 몇자리수인지 확인하고 2) 각 자..
문제 중간값은 통계 집단의 수치를 크기 순으로 배열 했을 때 전체의 중앙에 위치하는 수치를 뜻한다. 입력으로 N 개의 점수가 주어졌을 때, 중간값을 출력하라. [예제] N이 9 이고, 9개의 점수가 아래와 같이 주어질 경우, 85 72 38 80 69 65 68 96 22 69이 중간값이 된다. [제약 사항] 1. N은 항상 홀수로 주어진다. 2. N은 9이상 199 이하의 정수이다. (9 ≤ N ≤ 199) [입력] 입력은 첫 줄에 N 이 주어진다. 둘째 줄에 N 개의 점수가 주어진다. [출력] N 개의 점수들 중, 중간값에 해당하는 점수를 정답으로 출력한다. 예시 더보기 풀이 import java.io.BufferedReader; import java.io.IOException; import java..
문제 10개의 수를 입력 받아, 그 중에서 가장 큰 수를 출력하는 프로그램을 작성하라. [제약 사항] 각 수는 0 이상 10000 이하의 정수이다. [입력] 가장 첫 줄에는 테스트 케이스의 개수 T가 주어지고, 그 아래로 각 테스트 케이스가 주어진다. 각 테스트 케이스의 첫 번째 줄에는 10개의 수가 주어진다. [출력] 출력의 각 줄은 '#t'로 시작하고, 공백을 한 칸 둔 다음 정답을 출력한다. (t는 테스트 케이스의 번호를 의미하며 1부터 시작한다.) 예시 더보기 풀이 import java.io.BufferedReader; import java.io.InputStreamReader; import java.util.StringTokenizer; public class Solution { public s..
문제 2개의 수를 입력 받아 크기를 비교하여 등호 또는 부등호를 출력하는 프로그램을 작성하라. [제약 사항] 각 수는 0 이상 10000 이하의 정수이다. [입력] 가장 첫 줄에는 테스트 케이스의 개수 T가 주어지고, 그 아래로 각 테스트 케이스가 주어진다. 각 테스트 케이스의 첫 번째 줄에는 2개의 수가 주어진다. [출력] 출력의 각 줄은 '#t'로 시작하고, 공백을 한 칸 둔 다음 정답을 출력한다. (t는 테스트 케이스의 번호를 의미하며 1부터 시작한다.) 예시 더보기 풀이 import java.io.BufferedReader; import java.io.InputStreamReader; import java.util.StringTokenizer; public class Solution { publi..
문제 10개의 수를 입력 받아, 평균값을 출력하는 프로그램을 작성하라. (소수점 첫째 자리에서 반올림한 정수를 출력한다.) [제약 사항] 각 수는 0 이상 10000 이하의 정수이다. [입력] 가장 첫 줄에는 테스트 케이스의 개수 T가 주어지고, 그 아래로 각 테스트 케이스가 주어진다. 각 테스트 케이스의 첫 번째 줄에는 10개의 수가 주어진다. [출력] 출력의 각 줄은 '#t'로 시작하고, 공백을 한 칸 둔 다음 정답을 출력한다. (t는 테스트 케이스의 번호를 의미하며 1부터 시작한다.) 예시 더보기 풀이 import java.io.BufferedReader; import java.io.InputStreamReader; import java.util.StringTokenizer; public class..
문제 25년 간의 수행 끝에 원재는 미래를 보는 능력을 갖게 되었다. 이 능력으로 원재는 사재기를 하려고 한다. 다만 당국의 감시가 심해 한 번에 많은 양을 사재기 할 수 없다. 다음과 같은 조건 하에서 사재기를 하여 최대한의 이득을 얻도록 도와주자. 1. 원재는 연속된 N일 동안의 물건의 매매가를 예측하여 알고 있다. 2. 당국의 감시망에 걸리지 않기 위해 하루에 최대 1만큼 구입할 수 있다. 3. 판매는 얼마든지 할 수 있다. 예를 들어 3일 동안의 매매가가 1, 2, 3 이라면 처음 두 날에 원료를 구매하여 마지막 날에 팔면 3의 이익을 얻을 수 있다. [입력] 첫 번째 줄에 테스트 케이스의 수 T가 주어진다. 각 테스트 케이스 별로 첫 줄에는 자연수 N(2 ≤ N ≤ 1,000,000)이 주어지고..