본문 바로가기

전체 글411

[프로그래머스] 숫자 문자열과 영단어 - JAVA [자바] https://programmers.co.kr/learn/courses/30/lessons/81301 코딩테스트 연습 - 숫자 문자열과 영단어 네오와 프로도가 숫자놀이를 하고 있습니다. 네오가 프로도에게 숫자를 건넬 때 일부 자릿수를 영단어로 바꾼 카드를 건네주면 프로도는 원래 숫자를 찾는 게임입니다. 다음은 숫자의 일부 자 programmers.co.kr 문제 문제 풀이 이 문제에서는 String s가 주어진다. s에서는 숫자의 일부 자릿수가 영단어로 바뀌어졌거나, 혹은 바뀌지 않고 그대로인 문자열이다. 그리고 이 s가 의미하는 원래 숫자를 return 해주면 된다. 이 문제는 String replace(CharSequnce target, CharSequence replacement) 함수를 이용해서 .. 2022. 3. 26.
[백준] 11660번 : 구간 합 구하기 5 – JAVA [자바] https://www.acmicpc.net/problem/11660 11660번: 구간 합 구하기 5 첫째 줄에 표의 크기 N과 합을 구해야 하는 횟수 M이 주어진다. (1 ≤ N ≤ 1024, 1 ≤ M ≤ 100,000) 둘째 줄부터 N개의 줄에는 표에 채워져 있는 수가 1행부터 차례대로 주어진다. 다음 M개의 줄에는 네 www.acmicpc.net 문제 문제 풀이 백준 11660번 구간 합 구하기 5는 2차원 DP를 이용해서 푸는 다이나믹 프로그래밍 문제이다. DP 이론을 조금 더 공부하고 싶으면 밑에 있는 링크를 참고하면 되겠다. https://propercoding.tistory.com/entry/알고리즘-다이나믹-프로그래밍-Dynamic-Programming [알고리즘] 다이나믹 프로그래밍 (.. 2022. 3. 26.
[백준] 2309번 : 일곱 난쟁이 – JAVA [자바] https://www.acmicpc.net/problem/2309 2309번: 일곱 난쟁이 아홉 개의 줄에 걸쳐 난쟁이들의 키가 주어진다. 주어지는 키는 100을 넘지 않는 자연수이며, 아홉 난쟁이의 키는 모두 다르며, 가능한 정답이 여러 가지인 경우에는 아무거나 출력한다. www.acmicpc.net 문제 문제 풀이 백준 2309번 일곱 난쟁이는 브루트 포스 기법을 이용해서 푸는 스페셜저지 문제이다. 스페셜저지 문제는 문제의 정답이 여러 가지일 때 유저가 출력한 답이 맞는지 안 맞는지 확인하는 문제이다. 이 문제에서는 9명의 키가 주어진다. 그리고 9명의 키 중에 7개를 골라서 합이 100이 되는 7명을 찾고 그 7명의 키를 오름차순으로 출력해주면 된다. 먼저 9명 키의 합 sum을 구해준다. 그리고 .. 2022. 3. 24.
[백준] 11718번 : 그대로 출력하기 – JAVA [자바] https://www.acmicpc.net/problem/11718 11718번: 그대로 출력하기 입력이 주어진다. 입력은 최대 100줄로 이루어져 있고, 알파벳 소문자, 대문자, 공백, 숫자로만 이루어져 있다. 각 줄은 100글자를 넘지 않으며, 빈 줄은 주어지지 않는다. 또, 각 줄은 공백으로 시 www.acmicpc.net 문제 문제 풀이 백준 11718번 그대로 출력하기는 되게 간단한 문제이다. 입력받은 것을 그대로 출력해주면 된다. 이 문제는 while-loop을 이용해서 입력받은 것이 없으면 loop을 종료시키는 식으로 해주면 된다. 자바에서는 다음과 같이 쓰면 된다. BufferedReader br = new BufferedReader(new InputStreamReader(System.in.. 2022. 3. 24.
[백준] 1475번 : 방 번호 – JAVA [자바] https://www.acmicpc.net/problem/1475 1475번: 방 번호 첫째 줄에 다솜이의 방 번호 N이 주어진다. N은 1,000,000보다 작거나 같은 자연수이다. www.acmicpc.net 문제 문제 풀이 백준 1475번 방 번호는 간단하게 구현을 해서 푸는 실버 5 난이도의 문제이다. 이 문제에서는 숫자 N이 주어진다. 그리고 0부터 9까지 있는 플라스틱 숫자 세트가 있디. N을 만드는데 몇 개의 플라스틱 숫자 세트가 필요한지 구해주면 된다. 추가로, 6과 9는 뒤집어서 사용할 수 있으므로 같은 수로 친다. 예를 보겠다. 1) 9999 9999는 세트 2개가 필요하다. 왜냐면 한 세트의 6과 9가 있기 때문이다. 2) 122 122는 세트 2개가 필요하다. 2가 두 번 나오기 때.. 2022. 3. 24.
[백준] 15828번 : Router – JAVA [자바] https://www.acmicpc.net/problem/15828 15828번: Router 인터넷을 사용하기 위해서는 컴퓨터에 인터넷 회선을 연결하거나 Wi-Fi를 연결해야 한다. 이렇게 연결된 네트워크를 통해 컴퓨터에는 통신이 가능하다. 마음에 드는 노래나 동영상이 있는 곳에 www.acmicpc.net 문제 백준 15828번 Router는 큐(Queue)를 이용해서 푸는 문제이다. 큐의 대한 이론을 공부하고 싶으면 밑에 있는 링크를 참고하면 되겠다. https://propercoding.tistory.com/entry/자료구조-큐Queue [자료구조] 큐(Queue) 목차 큐(Queue)의 개념 큐는 FIFO 선입선출(First In First Out)의 구조를 가진다. 즉, 큐에서는 먼저 들어온.. 2022. 3. 23.
[백준] 1026번 : 보물 – JAVA [자바] https://www.acmicpc.net/problem/1026 1026번: 보물 첫째 줄에 N이 주어진다. 둘째 줄에는 A에 있는 N개의 수가 순서대로 주어지고, 셋째 줄에는 B에 있는 수가 순서대로 주어진다. N은 50보다 작거나 같은 자연수이고, A와 B의 각 원소는 100보다 작거 www.acmicpc.net 문제 문제 풀이 백준 1026번 보물은 실버 4 난이도의 sorting을 이용해서 푸는 문제이다. 이 문제에는 배열 A, B가 있고 배열 B는 그대로 둔 채 배열 A를 재배치해서 S = A[0] * B[0] + ... + A[N-1] * B[N-1]가 최소값이 되게 하면 된다. 이 문제 풀이는 되게 간단하다. Arrays.sort() 메서드를 이용해서 배열 A, B를 증가하는 배열로 만든다.. 2022. 3. 23.
[백준] 9656번 : 돌 게임 2 – JAVA [자바] https://www.acmicpc.net/problem/9656 9656번: 돌 게임 2 상근이가 게임을 이기면 SK를, 창영이가 게임을 이기면 CY을 출력한다. www.acmicpc.net 문제 문제 풀이 백준 9656번 돌 게임 2는 DP (다이나믹 프로그래밍)를 이용해서 푸는 문제이다. DP에 대해서 조금 더 알고 싶으면 밑에 있는 링크를 참고해 주면 되겠다. https://propercoding.tistory.com/entry/알고리즘-다이나믹-프로그래밍-Dynamic-Programming [알고리즘] 다이나믹 프로그래밍 (Dynamic Programming) 목차 다이나믹 프로그래밍이란? 다이나믹 프로그래밍 (Dynamic Programming) 또는 동적 계획법은 큰 문제를 작은 문제로 쪼개.. 2022. 3. 22.
반응형