PS 195

[백준 11383] 뚊 [Python]

문제정우는 "뚊"과 "돌돔"을 의미하는 두 이미지를 받았다. 과연 두 그림이 같은지 검사해보자. 즉 N× M 크기의 이미지와 N ×2 M 크기의 이미지가 주어질 때 첫 번째 이미지를 가로로 두 배로 늘이면 두 번째 이미지가 되는지 검사하는 프로그램을 작성하라.입력입력의 첫 번째 줄에 N, M (1 ≤ N, M ≤ 10)이 주어진다. 다음 N개의 줄의 각 줄에는 M개의 문자가 주어진다. 다음 N개의 줄의 각 줄에는 2M개의 문자가 주어진다. 모든 문자는 영문 알파벳 대문자 혹은 소문자이다.출력첫 번째로 주어진 이미지를 가로로 두 배로 늘렸을 때 두 번째 이미지가 된다면 "Eyfa"을 출력하고, 되지 않는다면 "Not Eyfa"을 출력한다.풀이입력받은 문자열 N개의 문자열의 각 문자를 2배로 늘렸을 때 두번..

[엘리스 알고리즘 코드 챌린지 시즌 2] 예선 3일 [Python]

풀이입력받은 문자열 S에 대해 압축을 해제하는 문제다.압축된 문자열은 K(Q)의 형식으로 주어지며 이를 해제할 경우 Q를 K번 반복한다는 의미다.스택과, 재귀 중 스택으로 푸는 방법이 익숙해 스택을 사용해 풀이했다. K(K(Q)K(Q))와 같은 예외를 고려해 문자열의 역순으로 진행했다.정작 제공된 테스트케이스에는 이와 같은 예외가 없었다.우선 ')' 인 경우에는 그냥 stack에 집어넣자.그 다음에는 Q에 해당하는 수들이 들어올 것이다.만약 stack의 마지막 요소가 ')'가 아니라면 Q의 길이를 저장하는 방식이므로 주어진 수( num )를 넣거나 더해주자.탐색을 계속 진행해 '(' 가 나온다면 스택에 넣은 Q의 길이를 뽑아 K와 곱해준 후 다시 스택에 넣어주면 된다.이 과정에서 중복계산과 스택에 남아있..

Activity 2024.07.11

[백준 05949] Adding Commas [Python]

문제Bessie is working with large numbers N (1 입력Line 1: A single integer: N 출력Line 1: The integer N with commas inserted before each set of three digits except the first digits (as traditionally done in many cultures)풀이입력받은 수를 읽기 쉽도록 3자리마다 쉼표를 넣어 출력해주는 문제다.format함수를 사용해 쉽게 풀이할 수 있다.소스코드보기출처https://www.acmicpc.net/problem/5949

[백준 03996] 위대한 사기꾼 [Python]

문제믿기 힘들겠지만 상근이는 이번 겨울 방학에 달에 갔다 왔다. 방학이 끝나고 다시 학교로 돌아온 상근이는 친구들에게 달나라 사람(Selenites)을 만났던 이야기를 해주었다.상근이는 달에서 사용하는 수 체계를 주로 설명해주었다. 달에서는 음의 진법을 사용한다.음의 진법은 사람들이 이해하기는 어렵다. 따라서, 상근이는 달을 여행하는 동안 0과 𝑛을 포함하는 사이의 수 중에서 𝑘진법과 −𝑘진법에서 표현이 같은 수를 모두 외웠다. 상근이가 외운 숫자의 개수를 구하는 프로그램을 작성하시오.입력첫째 줄에 𝑛과 𝑘가 주어진다. (1 ≤ 𝑛 ≤ 10^15, 2 ≤ 𝑘 ≤ 1,000)출력첫째 줄에 상근이가 달에서 생활하면서 외운 숫자의 개수를 출력한다.풀이K진법과 -K진법으로 표현한 수가 표현이 동일한..

[엘리스 알고리즘 코드 챌린지 시즌 2] 예선 1일 [Python]

풀이주어진 수의 구성으로 만들 수 있는 다음으로 큰 수 즉 다음 순열을 구하는 문제다.N은 1이상 999,999이하의 수로 주어지지만, 전체는 자릿수는 6으로 완전 탐색인 순열로 풀이가 가능하다.순열을 구하고, 정렬해서 N보다 큰 다음 순열을 출력해주자.소스코드보기출처 엘리스 코드 챌린지[엘리스 코드 챌린지] 신청 페이지 입니다. 현재 알고리즘 코드 챌린지가 진행 중입니다!code-challenge.elice.io

Activity 2024.07.09

[백준 05789] 한다 안한다 [Python]

문제옛날에는 결정하기 어려운 일이 있을 때는 꽃을 이용해서 결정을 내렸다. 꽃을 하나 떼서 잎을 하나씩 떼면서, 한다와 안한다를 번갈아 가면서 말하다가 마지막 잎을 뗄 때 말한 말로 결정을 했다.상근이는 이 방법을 응용해서 결정하기 어려운 일을 하나 결정하려고 한다.먼저, 0과 1로 이루어진 문자열을 랜덤으로 하나 만든다. 그 다음 문자열의 양 끝에서 수를 하나씩 고르고, 두 수를 비교한다. 수가 같으면 "한다"이고, 다르면 "안한다"이다. 그 다음에는 고른 수를 버리고, 모든 수를 고를 때까지 이 작업을 반복한다. 따라서, 마지막으로 고르는 두 숫자로 결정을 내리는 것이다.0과 1로 이루어진 문자열이 주어졌을 때, 상근이가 내리는 결정을 구하는 프로그램을 작성하시오.입력첫째 줄에는 테스트 케이스의 개수..

[HackerRank] Weather Observation Station 5 [MySQL]

풀이STATION 테이블에서 CITY와 CITY의 길이를 출력해야 한다.단, CITY의 길이가 가장 작은 것 1개와 가장 큰 것 1개를 출력해야 한다.만약 길이가 동일한 대상이 여러개라면 CITY가 사전순으로 정렬했을 때 먼저오는 CITY를 출력해야 한다.문제에서 단일 쿼리일 필요가 없다 명시되어있으니 두개의 SELECT문으로 각각 출력해주자.소스코드보기출처 Weather Observation Station 5 | HackerRankWrite a query to print the shortest and longest length city name along with the length of the city names.www.hackerrank.com

PS/SQL 2024.07.06