'Coding Test' 카테고리의 글 목록 (5 Page) — 뚝딱이

Coding Test

Coding Test/Baekjoon

[Python] 파이썬 백준(15649) N과 M(1)

https://www.acmicpc.net/problem/15649 15649번: N과 M (1) 한 줄에 하나씩 문제의 조건을 만족하는 수열을 출력한다. 중복되는 수열을 여러 번 출력하면 안되며, 각 수열은 공백으로 구분해서 출력해야 한다. 수열은 사전 순으로 증가하는 순서로 출력해 www.acmicpc.net 나의 풀이 자연수 N과 M이 주어졌을 때, 아래 조건을 만족하는 길이가 M인 수열을 모두 구하는 프로그램을 작성하시오. 1부터 N까지 자연수 중에서 중복 없이 M개를 고른 수열 3 1 1 2 3 4 4 1 2 3 4 1 2 4 3 1 3 2 4 1 3 4 2 1 4 2 3 1 4 3 2 2 1 3 4 2 1 4 3 2 3 1 4 2 3 4 1 2 4 1 3 2 4 3 1 3 1 2 4 3 1 4..

Coding Test/Baekjoon

[Python] 파이썬 백준(25501) 재귀의 귀재

https://www.acmicpc.net/problem/25501 25501번: 재귀의 귀재 각 테스트케이스마다, isPalindrome 함수의 반환값과 recursion 함수의 호출 횟수를 한 줄에 공백으로 구분하여 출력한다. www.acmicpc.net 나의 풀이 문자열이 팰린드롬인지 판별하며, recursion이 얼마나 호출됐는지를 출력하는 문제 팰린드롬은 앞에서부터 읽었을 때와 뒤에서부터 읽었을 때 같은 문자열을 말함 힌트 def recursion(s, l, r): if l >= r: return 1 elif s[l] != s[r]: return 0 else: return recursion(s, l+1, r-1) def isPalindrome(s): return recursion(s, 0, le..

Coding Test/Baekjoon

[Python] 파이썬 백준(10870) 피보나치 수 5

https://www.acmicpc.net/problem/10870 10870번: 피보나치 수 5 피보나치 수는 0과 1로 시작한다. 0번째 피보나치 수는 0이고, 1번째 피보나치 수는 1이다. 그 다음 2번째 부터는 바로 앞 두 피보나치 수의 합이 된다. 이를 식으로 써보면 Fn = Fn-1 + Fn-2 (n ≥ 2)가 www.acmicpc.net 나의 풀이 피보나치 수는 0과 1로 시작하고 아래의 수식을 따른다. $$ F_{n} = F_{n-1} + F_{n-2} $$ n = 17일 때, 피보나치 수는 1597이다. 0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233, 377, 610, 987, 1597 import sys num = int(sys.stdin.re..

Coding Test/Baekjoon

[Python] 파이썬 백준(27433) 팩토리얼2

https://www.acmicpc.net/problem/27433 27433번: 팩토리얼 2 0보다 크거나 같은 정수 N이 주어진다. 이때, N!을 출력하는 프로그램을 작성하시오. www.acmicpc.net 나의 풀이 팩토리얼을 구현하는 문제이다. 팩토리얼은 \( N! \) 으로 표기하고 N보다 작거나 같은 모든 양의 정수의 곱이다. 반복문 for문을 n만큼 반복해 N보다 작거나 같은 모든 양의 정수를 곱해주어서 문제를 풀었음 import sys num = int(sys.stdin.readline()) answer = 1 for i in range(num): answer *= (i+1) print(answer) 재귀함수 num과 answer를 파라미터로 하여 num

Coding Test/Baekjoon

[Python] 파이썬 백준(18258) 큐2

https://www.acmicpc.net/problem/18258 18258번: 큐 2 첫째 줄에 주어지는 명령의 수 N (1 ≤ N ≤ 2,000,000)이 주어진다. 둘째 줄부터 N개의 줄에는 명령이 하나씩 주어진다. 주어지는 정수는 1보다 크거나 같고, 100,000보다 작거나 같다. 문제에 나와있지 www.acmicpc.net 큐의 개념을 익히고 실습하는 문제. 연산 당 시간 복잡도가 O(1)이어야 한다는 점에 유의하세요. 나의 풀이 Queue를 구현하는 문제로 명령은 다음과 같음 push X: 정수 X를 큐에 넣는 연산이다. pop: 큐에서 가장 앞에 있는 정수를 빼고, 그 수를 출력한다. 만약 큐에 들어있는 정수가 없는 경우에는 -1을 출력한다. size: 큐에 들어있는 정수의 개수를 출력한..

Coding Test/Baekjoon

[Python] 파이썬 백준(1874) 스택 수열

https://www.acmicpc.net/problem/1874 1874번: 스택 수열 1부터 n까지에 수에 대해 차례로 [push, push, push, push, pop, pop, push, push, pop, push, push, pop, pop, pop, pop, pop] 연산을 수행하면 수열 [4, 3, 6, 8, 7, 5, 2, 1]을 얻을 수 있다. www.acmicpc.net 나의 풀이 1부터 n까지 수를 스택에 넣었다가 늘어놓음으로 하나의 수열을 만들 수 있음 이를 스택을 이용해 수열을 만들 수 있는지 없는지 있다면 push(+)와 pop(-)을 어떻게 수행해야하는지 출력함 문제가 좀 이해하기 힘든데 push랑 pop을 기준으로 이해하면 됨 8 4 3 6 8 7 5 2 1 + + + +..

Coding Test/Baekjoon

[Python] 파이썬 백준(4949) 균형잡힌 세상

https://www.acmicpc.net/problem/4949 4949번: 균형잡힌 세상 각 문자열은 마지막 글자를 제외하고 영문 알파벳, 공백, 소괄호("( )"), 대괄호("[ ]")로 이루어져 있으며, 온점(".")으로 끝나고, 길이는 100글자보다 작거나 같다. 입력의 종료조건으로 맨 마지막에 www.acmicpc.net 나의 풀이 기존의 괄호 '(', ')'만 탐색하는 과정에서 썼는데 시간이 오래 걸렸던 방법을 사용했다. 괄호 1개만 확인한다면 '(' 일 때 +1, ')' 일 때 -1로 푸는 게 더 빠름 이 문제는 괄호 '()' '[]'가 제대로 있는지 그리고 서로 겹쳐있지 않는지 확인해야 함 ([)] 이 경우에는 no를 출력해야 함 풀이는 위와 같이 ')'와 ']'가 나왔을 때 짝이 맞다면..

Coding Test/Baekjoon

[Python] 파이썬 백준(9012) 괄호

https://www.acmicpc.net/problem/9012 9012번: 괄호 괄호 문자열(Parenthesis String, PS)은 두 개의 괄호 기호인 ‘(’ 와 ‘)’ 만으로 구성되어 있는 문자열이다. 그 중에서 괄호의 모양이 바르게 구성된 문자열을 올바른 괄호 문자열(Valid PS, VPS)이라고 www.acmicpc.net 나의 풀이 스택을 사용하는 문제로 괄호로 구성된 문자열이 바르게 되어있다면 YES, 아니라면 NO를 출력하는 문제이다. 6 (())()) (((()())() (()())((())) ((()()(()))(((())))() ()()()()(()()())() (()((())()( NO NO YES NO YES NO 우선 괄호를 하나씩 뽑아 ')'일 때는 check에 +1을..

파송송
'Coding Test' 카테고리의 글 목록 (5 Page)