일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- stack
- 자바스크립트
- array
- 중간 평균값 구하기
- 콜백지옥
- AtoZ0403
- 삼성소프트웨어아카데미
- 코테
- 코테준비
- 배열
- 자료구조
- java
- 정렬
- 자바
- 그리디알고리즘
- 삼성
- 백준
- 카카오
- 알고리즘
- javascript
- 코딩
- mybatis
- 코딩테스트
- NestJS
- 인프런
- 프로그래머스
- js
- SWEA
- 스텍
- spring
- Today
- Total
목록코딩테스트 준비/SWEA (49)
개발에 AtoZ까지
문제 민석이는 불면증에 걸렸다. 그래서 잠이 안 올 때의 민간요법 중 하나인 양 세기를 하려고 한다. 민석이는 1번 양부터 순서대로 세는 것이 재미없을 것 같아서 N의 배수 번호인 양을 세기로 하였다. 즉, 첫 번째에는 N번 양을 세고, 두 번째에는 2N번 양, … , k번째에는 kN번 양을 센다. 이렇게 숫자를 세던 민석이에게 잠은 더 오지 않고 다음과 같은 궁금증이 생겼다. 이전에 셌던 번호들의 각 자리수에서 0에서 9까지의 모든 숫자를 보는 것은 최소 몇 번 양을 센 시점일까? 예를 들어 N = 1295이라고 하자. 첫 번째로 N = 1295번 양을 센다. 현재 본 숫자는 1, 2, 5, 9이다. 두 번째로 2N = 2590번 양을 센다. 현재 본 숫자는 0, 2, 5, 9이다. 현재까지 본 숫자는..
문제 다음과 같이 Encoding 을 한다. 1. 우선 24비트 버퍼에 위쪽(MSB)부터 한 byte씩 3 byte의 문자를 집어넣는다. 2. 버퍼의 위쪽부터 6비트씩 잘라 그 값을 읽고, 각각의 값을 아래 [표-1] 의 문자로 Encoding 한다. 입력으로 Base64 Encoding 된 String 이 주어졌을 때, 해당 String 을 Decoding 하여, 원문을 출력하는 프로그램을 작성하시오. [제약사항] 문자열의 길이는 항상 4의 배수로 주어진다. 그리고 문자열의 길이는 100000을 넘지 않는다. [입력] 입력은 첫 줄에 총 테스트 케이스의 개수 T가 온다. 다음 줄부터 각 테스트 케이스가 주어진다. 테스트 케이스는 Encoding 된 상태로 주어지는 문자열이다. [출력] 테스트 케이스 t..
문제 RC (Radio Control) 카의 이동거리를 계산하려고 한다. 입력으로 매 초마다 아래와 같은 command 가 정수로 주어진다. 0 : 현재 속도 유지. 1 : 가속 2 : 감속 위 command 중, 가속(1) 또는 감속(2) 의 경우 가속도의 값이 추가로 주어진다. 가속도의 단위는, m/s2 이며, 모두 양의 정수로 주어진다. 입력으로 주어진 N 개의 command 를 모두 수행했을 때, N 초 동안 이동한 거리를 계산하는 프로그램을 작성하라. RC 카의 초기 속도는 0 m/s 이다. [예제] 아래 예제 입력에서 정답은 3 이 된다. 입력 시간 RC 카의 속도 RC 카의 이동거리 1 2 1 sec 2 m/s 2 m 2 1 2 sec 1 m/s 3 m [제약사항] 1. N은 2이상 30이하..
문제 숫자 N은 아래와 같다. N=2a x 3b x 5c x 7d x 11e N이 주어질 때 a, b, c, d, e 를 출력하라. [제약 사항] N은 2 이상 10,000,000 이하이다. [입력] 가장 첫 줄에는 테스트 케이스의 개수 T가 주어지고, 그 아래로 각 테스트 케이스가 주어진다. 각 테스트 케이스의 첫 번째 줄에 N 이 주어진다. [출력] 출력의 각 줄은 '#t'로 시작하고, 공백을 한 칸 둔 다음 정답을 출력한다. (t는 테스트 케이스의 번호를 의미하며 1부터 시작한다.) 예시 더보기 풀이 import java.io.BufferedReader; import java.io.InputStreamReader; import java.util.ArrayList; public class Soluti..
문제 원본 문서는 너비가 10인 여러 줄의 문자열로 이루어져 있다. 문자열은 마지막 줄을 제외하고 빈 공간 없이 알파벳으로 채워져 있고 마지막 줄은 왼쪽부터 채워져 있다. 이 문서를 압축한 문서는 알파벳과 그 알파벳의 연속된 개수로 이루어진 쌍들이 나열되어 있다. (예 : A 5 AAAAA) 압축된 문서를 입력 받아 원본 문서를 만드는 프로그램을 작성하시오. [예제] 압축된 문서의 내용 A 10 B 7 C 5 압축을 풀었을 때 원본 문서의 내용 AAAAAAAAAA BBBBBBBCCC CC [제약사항] 1. 압축된 문서의 알파벳과 숫자 쌍의 개수 N은1이상 10이하의 정수이다. (1 ≤ N ≤ 10) 2. 주어지는 알파벳 Ci는 A~Z의 대문자이다. (i는 줄의 번호로 1~N까지의 수) 3. 알파벳의 ..
문제 [제약 사항] 월은 1 이상 12 이하의 정수이다. 각 달의 마지막 날짜는 다음과 같다. 1/31, 2/28, 3/31, 4/30, 5/31, 6/30, 7/31, 8/31, 9/30, 10/31, 11/30, 12/31 두 번째 날짜가 첫 번째 날짜보다 항상 크게 주어진다. [입력] 가장 첫 줄에는 테스트 케이스의 개수 T가 주어지고, 그 아래로 각 테스트 케이스가 주어진다. 각 테스트 케이스의 첫 번째 줄에는 4개의 수가 주어진다. 첫 번째 수가 월을 나타내고 두 번째 수가 일을 나타낸다. 그 다음 같은 형식으로 두 번째 날짜가 주어진다. [출력] 출력의 각 줄은 '#t'로 시작하고, 공백을 한 칸 둔 다음 정답을 출력한다. (t는 테스트 케이스의 번호를 의미하며 1부터 시작한다.) 예시 더보기..
문제 달팽이는 1부터 N*N까지의 숫자가 시계방향으로 이루어져 있다. 다음과 같이 정수 N을 입력 받아 N크기의 달팽이를 출력하시오. [예제] N이 3일 경우, N이 4일 경우, [제약사항] 달팽이의 크기 N은 1 이상 10 이하의 정수이다. (1 ≤ N ≤ 10) [입력] 가장 첫 줄에는 테스트 케이스의 개수 T가 주어지고, 그 아래로 각 테스트 케이스가 주어진다. 각 테스트 케이스에는 N이 주어진다. [출력] 각 줄은 '#t'로 시작하고, 다음 줄부터 빈칸을 사이에 두고 달팽이 숫자를 출력한다. (t는 테스트 케이스의 번호를 의미하며 1부터 시작한다.) 예시 더보기 풀이 import java.io.BufferedReader; import java.io.InputStreamReader; import j..
문제 N 개의 숫자로 구성된 숫자열 Ai (i=1~N) 와 M 개의 숫자로 구성된 숫자열 Bj (j=1~M) 가 있다. 아래는 N =3 인 Ai 와 M = 5 인 Bj 의 예이다. Ai 나 Bj 를 자유롭게 움직여서 숫자들이 서로 마주보는 위치를 변경할 수 있다. 단, 더 긴 쪽의 양끝을 벗어나서는 안 된다. 서로 마주보는 숫자들을 곱한 뒤 모두 더할 때 최댓값을 구하라. 위 예제의 정답은 아래와 같이 30 이 된다. [제약 사항] N 과 M은 3 이상 20 이하이다. [입력] 가장 첫 줄에는 테스트 케이스의 개수 T가 주어지고, 그 아래로 각 테스트 케이스가 주어진다. 각 테스트 케이스의 첫 번째 줄에 N 과 M 이 주어지고, 두 번째 줄에는 Ai, 세 번째 줄에는 Bj 가 주어진다. [출력] 출력의 ..