본문 바로가기
반응형

전체 글162

BOJ 1120 - 문자열 / C++ 문제 링크 : https://www.acmicpc.net/problem/1120 1120번: 문자열 길이가 N으로 같은 문자열 X와 Y가 있을 때, 두 문자열 X와 Y의 차이는 X[i] ≠ Y[i]인 i의 개수이다. 예를 들어, X=”jimin”, Y=”minji”이면, 둘의 차이는 4이다. 두 문자열 A와 B가 주어진다. 이때, A의 www.acmicpc.net 문제 풀이 문자열 a와 b를 입력받아 두 문자열의 차이가 최소일 때, 그 차이의 수를 출력하면 되는 문제이다. 이 때, a.size() a >> b; int diffSize = b.size() - a.size(); if(diffSize == 0){ cout 2022. 3. 8.
프로그래머스 - 짝지어 제거하기 / C++ 문제 링크 : https://programmers.co.kr/learn/courses/30/lessons/12973 코딩테스트 연습 - 짝지어 제거하기 짝지어 제거하기는, 알파벳 소문자로 이루어진 문자열을 가지고 시작합니다. 먼저 문자열에서 같은 알파벳이 2개 붙어 있는 짝을 찾습니다. 그다음, 그 둘을 제거한 뒤, 앞뒤로 문자열을 이어 붙 programmers.co.kr 문제 풀이 문자열의 각 문자를 순회하며 스택에 넣는다. 만약 스택이 비어있다면 그냥 넣으면 되고 스택이 비어있지 않다면 top과 비교하여 같은 문자인지 확인한다. 같은 문자라면 상쇄되기 때문에 push해줄 필요없이 pop하면 상쇄된다. 다르다면 그냥 push해주면 된다. 스택이 비어있다면 모든 문자가 짝지어져 상쇄되는 경우이므로 1을,.. 2022. 3. 6.
프로그래머스 - 정수 삼각형 / C++ 문제 링크 : https://programmers.co.kr/learn/courses/30/lessons/43105 코딩테스트 연습 - 정수 삼각형 [[7], [3, 8], [8, 1, 0], [2, 7, 4, 4], [4, 5, 2, 6, 5]] 30 programmers.co.kr 문제 풀이 간단한 DP 문제이다. 그림에서는 삼각형이지만 실제 배열로 나타내면 [7] [3, 8] [8, 1, 0] [2, 7, 4, 4] [4, 5, 2, 6, 5] 의 형태이므로 조금 더 점화식을 세우기 쉽다. 누적 값에 현재 값을 더해나가며 DP 배열을 채워나간다 행을 i, 열을 j로 나타내면 [3, 8]에서 3에 더할 수 있는 값은 triangle[i-1][j]에 있는 7이고 8에 더할 수 있는 값은 triangle.. 2022. 3. 6.
BOJ 1654 - 랜선 자르기 / C++ 문제 링크 : https://www.acmicpc.net/problem/1654 1654번: 랜선 자르기 첫째 줄에는 오영식이 이미 가지고 있는 랜선의 개수 K, 그리고 필요한 랜선의 개수 N이 입력된다. K는 1이상 10,000이하의 정수이고, N은 1이상 1,000,000이하의 정수이다. 그리고 항상 K ≦ N 이다. 그 www.acmicpc.net 문제 풀이 이미 갖고 있는 랜선들 k개를 잘라 n개의 랜선을 만들 때, 랜선 하나의 최대 길이를 구하면 된다. 그러기 위해서는 랜선의 길이를 x라 했을 때, 원소들에 대해 (LANlines[i] / x)를 구하여 몇 개의 랜선을 만들 수 있는지 구한 뒤 모두 더해 n개 이상 만들 수 있다면 정답이 될 수 있다. 따라서 0부터 랜선의 최대 길이를 이분 탐색.. 2022. 3. 4.
반응형