728x90
백준 10813번 - 공 바꾸기 (Python 문제 풀이 및 해설)
CS/Algorithm2023. 10. 27. 09:43백준 10813번 - 공 바꾸기 (Python 문제 풀이 및 해설)

문제 예제 문제 풀이 해당 문제의 핵심은 배열 교환(swap)하는 것입니다. 교환할 값 2개 a, b 중 a를 임시로 만든 변수(t)에 담고, a에 b를 담고 b에 t를 할당하면 swap이 됩니다. 우선 모든 바구니에 입력받은 값을 채워 넣습니다. 예를들어, n이 5인 경우 [1, 2, 3, 4, 5] 와 같이 담습니다. 이후 i값과 j값을 입력받고 2개의 원소를 swap 합니다. 이때 주의할 점은 0번째 인덱스에 1번째 바구니 값을 할당 했으므로, 입력받은 값에 각각 -1을 해줘야합니다 import sys n, m = map(int, sys.stdin.readline().split()) bucket = [i + 1 for i in range(n)] for _ in range(m): i, j = map(..

백준 10810번 - 공 넣기 (Python 문제 풀이 및 해설)
CS/Algorithm2023. 10. 27. 09:25백준 10810번 - 공 넣기 (Python 문제 풀이 및 해설)

문제 예제 문제 풀이 바구니 개수만큼 빈 배열을 만들고, 기본 값은 0으로 합니다. 의미로 보면, 제일 처음에는 바구니의 공이 0개다 이후 입력받은 값에 따라 바구니에 공을 넣어줍니다. 단, 계속해서 넣는것이 아니라 이전에 있던 공을 빼고 새로운 공을 넣는것이므로, 그냥 새롭게 할당하면 됩니다. 반복문을 모두 순회하고 값을 출력합니다. import sys total, m = map(int, sys.stdin.readline().split()) bucket = [0 for _ in range(total)] for _ in range(m): to, _from, n = map(int, sys.stdin.readline().split()) for i in range(to, _from + 1): bucket[i ..

백준 25314번 - 코딩은 체육과목 입니다 (Python 문제 풀이 및 해설)
CS/Algorithm2023. 10. 25. 09:35백준 25314번 - 코딩은 체육과목 입니다 (Python 문제 풀이 및 해설)

문제 예제 예제 입력 예제 출력 4 long int 20 long long long long long int 문제 풀이 쉽게 생각하면 4로 나눈 횟수 만큼 long을 입력하고 맨 뒤에 int를 붙여주면 됩니다. 파이썬에서는 문자열도 곱셈이 가능합니다. "a" 라는 문자열에 4를 곱하면 "aaaa"와 같이 a 문자열이 4번 반복되게 됩니다. 따라서, 해당 문제도 입력받은 값을 4로 나눈뒤에 "long " 문자열에 곱하고 그 뒤에 + 연산자를 통해 int를 추가합니다. import sys print("long " * (int(sys.stdin.readline()) // 4) + "int") 원본 코드 https://github.com/bluemiv/Algorithm/blob/master/baekjoon/ex..

백준 10926번 - ??! (Python 문제 풀이 및 해설)
CS/Algorithm2023. 10. 25. 01:42백준 10926번 - ??! (Python 문제 풀이 및 해설)

문제 준하는 사이트에 회원가입을 하다가 joonas라는 아이디가 이미 존재하는 것을 보고 놀랐다. 준하는 놀람을 ??!로 표현한다. 준하가 가입하려고 하는 사이트에 이미 존재하는 아이디가 주어졌을 때, 놀람을 표현하는 프로그램을 작성하시오. 입력 첫째 줄에 준하가 가입하려고 하는 사이트에 이미 존재하는 아이디가 주어진다. 아이디는 알파벳 소문자로만 이루어져 있으며, 길이는 50자를 넘지 않는다. 출력 첫째 줄에 준하의 놀람을 출력한다. 놀람은 아이디 뒤에 ??!를 붙여서 나타낸다. 예제 예제입력 예제출력 joonas joonas??! baekjoon baekjoon??! 문제 풀이 입력받은 값의 뒤에 ??!를 붙이기만 하면 쉬운 문제입니다. 하지만, 엔터를 누르면 개행이 되기 때문에 rstrip()을 사..

백준 10869번 - 사칙연산 (Python 문제풀이 및 해설)
CS/Algorithm2023. 10. 24. 01:33백준 10869번 - 사칙연산 (Python 문제풀이 및 해설)

문제 두 자연수 A와 B가 주어진다. 이때, A+B, A-B, A*B, A/B(몫), A%B(나머지)를 출력하는 프로그램을 작성하시오. 입력 두 자연수 A와 B가 주어진다. (1 ≤ A, B ≤ 10,000) 출력 첫째 줄에 A+B, 둘째 줄에 A-B, 셋째 줄에 A*B, 넷째 줄에 A/B, 다섯째 줄에 A%B를 출력한다. 예제 예제입력 예제출력 7 3 10 4 21 2 1 문제 풀이 입력만 받고, 사칙연산을 하면 굉장히 쉬운 문제지만 문제를 잘보면 나눗셈의 경우는 소숫점을 제외한 몫만 반환해야하므로, int() 함수로 소숫점을 제거했습니다. import sys [na, nb] = map(int, sys.stdin.readline().split()) print(na + nb) print(na - nb) ..

백준 2588번 - 곱셈 (Python 문제 풀이 및 해설)
CS/Algorithm2023. 10. 24. 00:02백준 2588번 - 곱셈 (Python 문제 풀이 및 해설)

문제 입력 첫째 줄에 (1)의 위치에 들어갈 세 자리 자연수가, 둘째 줄에 (2)의 위치에 들어갈 세자리 자연수가 주어진다. 출력 첫째 줄부터 넷째 줄까지 차례대로 (3), (4), (5), (6)에 들어갈 값을 출력한다. 예제 예제 입력 예제 출력 472 385 2360 3776 1416 181720 문제풀이 초등학생때 처음 곱셈을 배울때와 같이 한 자리수 씩 모두 곱하고 나온 값을 모두 더하는 문제입니다. 해당 문제의 핵심은 각 자리의 자리 수를 구하는 건데, 나눗셈과 나머지 연산을 이용하여 구할 수 있습니다. import sys [na, nb] = map(int, [sys.stdin.readline(), sys.stdin.readline()]) c1 = na * (nb % 10) c2 = na * ..

백준 1008번 - A/B (Python 문제풀이 및 해설)
CS/Algorithm2023. 10. 23. 20:38백준 1008번 - A/B (Python 문제풀이 및 해설)

문제 두 정수 A와 B를 입력받은 다음, A/B를 출력하는 프로그램을 작성하시오. 입력 첫째 줄에 A와 B가 주어진다. (0

백준 10998번 - AxB (Python 알고리즘 풀이 및 해설)
CS/Algorithm2023. 10. 22. 12:22백준 10998번 - AxB (Python 알고리즘 풀이 및 해설)

문제 두 정수 A와 B를 입력받은 다음, A×B를 출력하는 프로그램을 작성하시오. 입력 첫째 줄에 A와 B가 주어진다. (0

백준 1001번 - A-B (Python 문제 풀이 및 해설)
CS/Algorithm2023. 10. 21. 12:01백준 1001번 - A-B (Python 문제 풀이 및 해설)

문제 두 정수 A와 B를 입력받은 다음, A-B를 출력하는 프로그램을 작성하시오. 입력 첫째 줄에 A와 B가 주어진다. (0

백준 1000번 - A+B (Python 문제 풀이 및 해설)
CS/Algorithm2023. 10. 20. 20:54백준 1000번 - A+B (Python 문제 풀이 및 해설)

문제 두 정수 A와 B를 입력받은 다음, A+B를 출력하는 프로그램을 작성하시오. 입력 첫째 줄에 A와 B가 주어진다. (0

728x90
image