본문 바로가기
반응형

프로그래머스234

(Python/🥇3)백준알고리즘 11437번: LCA 문제 바로가기 문제: N(2 ≤ N ≤ 50,000)개의 정점으로 이루어진 트리가 주어진다. 트리의 각 정점은 1번부터 N번까지 번호가 매겨져 있으며, 루트는 1번이다. 두 노드의 쌍 M(1 ≤ M ≤ 10,000)개가 주어졌을 때, 두 노드의 가장 가까운 공통 조상이 몇 번인지 출력한다. 입력: 첫째 줄에 노드의 개수 N이 주어지고, 다음 N-1개 줄에는 트리 상에서 연결된 두 정점이 주어진다. 그 다음 줄에는 가장 가까운 공통 조상을 알고싶은 쌍의 개수 M이 주어지고, 다음 M개 줄에는 정점 쌍이 주어진다. 출력: M개의 줄에 차례대로 입력받은 두 정점의 가장 가까운 공통 조상을 출력한다. import sys sys.setrecursionlimit(100000) sys.stdin = open('/Us.. 2023. 7. 17.
(Python/🥈3)백준 알고리즘 15779번: Zigzag 문제 바로가기 문제: 어떤 수열에서, 연속된 3개의 수를 보았을 때, 그 수가 단조증가 수열이거나, 단조감소 수열인 경우가 없으면 이 수열을 "지그재그 수열" 이라고 말한다. 좀 더 정확하게는, 길이 N의 수열 A가 모든 1 이상 N-2 이하의 자연수 i에 대해서, Ai ≤ Ai+1 ≤ Ai+2도 만족하지 않고, Ai ≥ Ai+1 ≥ Ai+2도 만족하지 않으면, A는 지그재그 수열이다. 길이 N의 수열 A가 주어졌을 때, A의 연속된 부분 수열 중 지그재그 수열의 최대 길이를 구하여라. 길이 M의 B가 길이 N인 A의 연속된 부분 수열이라는 것은, 어떤 i가 존재 해서, B1 = Ai, B2 = Ai+1, ..., BM = Ai+M-1 인 것을 말한다. 입력: 입력은 두 줄로 이루어져 있다. 첫째 줄에는.. 2023. 7. 3.
(Python/LV3) 가장 긴 팰린드롬 문제설명 : 앞뒤를 뒤집어도 똑같은 문자열을 팰린드롬(palindrome)이라고 합니다. 문자열 s가 주어질 때, s의 부분문자열(Substring)중 가장 긴 팰린드롬의 길이를 return 하는 solution 함수를 완성해 주세요. 예를들면, 문자열 s가 "abcdcba"이면 7을 return하고 "abacde"이면 3을 return합니다. 제한사항 문자열 s의 길이 : 2,500 이하의 자연수 문자열 s는 알파벳 소문자로만 구성 입출력 예 "abcdcba"7 "abacde"3 입출력 예 설명 입출력 예 #1 4번째자리 'd'를 기준으로 문자열 s 전체가 팰린드롬이 되므로 7을 return합니다. 입출력 예 #2 2번째자리 'b'를 기준으로 "aba"가 팰린드롬이 되므로 3을 return합니다. 풀이.. 2023. 6. 30.
PCCP 모의고사 2회 ) 3번: 카페 확장 문제 바로가기 문제: 주원이는 카페를 운영하고 있습니다. 주원이의 카페는 맛집으로 소문나서 항상 줄이 끊이지 않습니다. 하지만 카페가 협소하여 커피를 기다리는 손님들은 종종 불만을 토로하고 있습니다. 주원이는 카페를 확장하기로 하고, 얼마나 많은 손님들이 동시에 카페에 머무는지 확인해보려 합니다. 주원이네 카페에는 영업을 시작하자마자 0초에 손님 한 명이 가게에 도착하고, 정확히 k초마다 새로운 손님 한 명이 카페에 와서 줄을 섭니다. 손님들은 키오스크를 통해 주문하고, 주원이는 주문받은 순서대로 음료를 만듭니다. 주원이는 음료를 한 번에 하나씩 만들며, 지금 만들고 있는 음료를 다 만들면 다음 음료를 만들기 시작합니다. 손님은 자신이 주문한 음료를 받자마자 카페를 나갑니다. 주원이네 카페에는 여러 종류.. 2023. 6. 17.
PCCP 모의고사 2회 ) 2번: 신입사원 교육 문제 바로가기 문제 설명: 산업스파이 민수는 A회사에 위장 취업했습니다. 이를 모르는 민수의 상사는 신입사원 교육 중 일부를 민수에게 맡겼습니다. 민수가 맡은 임무는 신입사원 중 2명을 선발하고 선발된 2명이 같이 공부하게 하는 것입니다. 모든 신입사원들의 능력치는 정수로 표현되어 있는데, 2명의 신입사원이 같이 공부하면 서로의 능력을 흡수하여 두 신입사원의 능력치는 공부 전 두 사람의 능력치의 합이 됩니다. 즉, 능력치가 3과 7인 두 사원이 같이 공부하면 두 사원의 능력치가 모두 10이 됩니다. 선발한 2인의 교육이 끝나면 민수는 다시 2인을 선발하여 교육을 진행할 수도 있습니다. 이때 한번 민수에게 선발된 사원이 다시 선발될 수도 있습니다. 민수가 교육한 신입사원들을 제외한 다른 신입사원들의 능력치.. 2023. 6. 17.
PCCP 모의고사 2회 ) 1번: 실습용 롯봇 문제 바로가기 문제: 컴퓨터공학과에서는 실습용 로봇을 이용해서 로봇 프로그래밍을 학습합니다. 실습용 로봇은 입력된 명령에 따라 x좌표와 y좌표로 표현되는 2차원 좌표 평면 위를 이동합니다. 하나의 명령은 하나의 문자로 주어지며 각 명령어에 따라 로봇이 수행하는 일은 다음과 같이 네 종류입니다. 'R': 로봇이 오른쪽으로 90도 회전합니다. 'L': 로봇이 왼쪽으로 90도 회전합니다. 'G': 로봇이 한 칸 전진합니다. 'B': 로봇이 한 칸 후진합니다. 명령어는 각각의 명령들이 모인 하나의 문자열로 주어지며, 차례대로 수행됩니다. 로봇은 처음에 (0, 0) 위치에 +y 축을 향하여 놓여 있습니다. 다음 그림은 번호 순서대로 명령어 "GRGLGRG"의 과정을 보여줍니다. 로봇에 입력된 명령어를 순서대로 담.. 2023. 6. 17.
반응형