[BOJ/Python] 15552 빠른 A+B
·
💻IT Dev/Algorithm
📌 문제 15552번: 빠른 A+B 첫 줄에 테스트케이스의 개수 T가 주어진다. T는 최대 1,000,000이다. 다음 T줄에는 각각 두 정수 A와 B가 주어진다. A와 B는 1 이상, 1,000 이하이다. www.acmicpc.net 📌 내 코드 # 15552 빠른 A+B import sys input = sys.stdin.readline t = int(input()) for _ in range(1, t+1): a, b = map(int, input().rstrip().split()) sum = a+b print(sum) 💡 풀이 문제에서 제시한 sys.stdin.readline()를 활용하기 위해 sys를 import해준다. 선택 사항이긴 한데, 나같은 경우 sys.stdin.readline 문장이 ..
[BOJ/Python] 2438 별 찍기 - 1
·
💻IT Dev/Algorithm
📌 문제 2438번: 별 찍기 - 1 첫째 줄에는 별 1개, 둘째 줄에는 별 2개, N번째 줄에는 별 N개를 찍는 문제 www.acmicpc.net 📌 내 코드 # 별 찍기 - 1 import sys input = sys.stdin.readline n = int(input()) star = str() for i in range(1, n+1): star += '*' print(star) 💡 풀이 숫자가 아닌 문자인 *이 추가되는 것이기 때문에 *를 담을 변수 star의 변수형을 문자형인 str로 정의해준다. 이후에는 for문을 통해 1부터 입력 받은 n까지 반복하면서 *를 추가해준 후 출력해주면 된다. 📌 정리 for문의 기초는 어느 정도 다져진 것 같다. 이제 반복문 문제는 브론즈 3, 4 레벨의 문제가..
[BOJ/Python] 11021 A+B - 7
·
💻IT Dev/Algorithm
📌 문제 11021번: A+B - 7 각 테스트 케이스마다 "Case #x: "를 출력한 다음, A+B를 출력한다. 테스트 케이스 번호는 1부터 시작한다. www.acmicpc.net 📌 내 코드 # 11021 A+B - 7 t = int(input()) for i in range(1, t+1): a, b = map(int, input().split()) sum = a+b print(f'Case #', i, f': ', sum, sep='') 💡 풀이 테스트케이스 t를 입력받는다. for문을 1부터 t까지 돌려서 a, b 값을 입력받는다. a와 b의 합을 sum 변수에 담는다. 각 합을 print()를 통해 출력한다. 출력 예시를 보면 Case #1: 2 로 출력되는데, 위와 동일한 형태로 출력하기 위해..
[BOJ/Python] 10951 A+B - 4
·
💻IT Dev/Algorithm
📌 문제 10951번: A+B - 4 두 정수 A와 B를 입력받은 다음, A+B를 출력하는 프로그램을 작성하시오. www.acmicpc.net 📌 내 코드 # 10951 A+B - 4 import sys input = sys.stdin.readline t = int(input()) for _ in range(1, t+1): a, b = map(int, input().split()) sum = a + b print(sum) 💡 풀이 문제 아래에 살펴보니 빠진 조건을 찾으신 분이 있길래 당연히 테스트케이스에 대한 입력이 빠진 줄 알고, 테스트케이스를 입력받아 for문을 통해 입력받게끔 했다. 이후 이전에 풀었던 영수증 문제처럼 for문 내에서 출력을 하게끔 print()문을 들여쓰기 후 넣어줬는데, Valu..
[BOJ/Python] 25304 영수증
·
💻IT Dev/Algorithm
📌 문제 25304번: 영수증 준원이는 저번 주에 살면서 처음으로 코스트코를 가 봤다. 정말 멋졌다. 그런데, 몇 개 담지도 않았는데 수상하게 높은 금액이 나오는 것이다! 준원이는 영수증을 보면서 정확하게 계산된 것 www.acmicpc.net 📌 내 코드 # 25304 영수증 import sys input = sys.stdin.readline x = int(input()) n = int(input()) total = 0 for _ in range(1, n+1): a, b = map(int, input().split()) price = a * b total += price if x == total: print('Yes') else: print('No') 💡 풀이 x(영수증에 적힌 총 금액)와 n(영수증에..
[BOJ/Python] 8393 합
·
💻IT Dev/Algorithm
📌 문제 8393번: 합 n이 주어졌을 때, 1부터 n까지 합을 구하는 프로그램을 작성하시오. www.acmicpc.net 📌 내 코드 # 8393 합 n = int(input()) num = 0 for i in range(1, n+1): num += i print(num) 💡 풀이 1부터 n까지의 합을 구해야 하므로 n을 입력받은 후, 더하기 연산 값을 담을 num 변수를 선언한다. for문에서 range() 함수를 통해 1 이상 n+1 미만으로 반복 횟수를 설정해 준다. 반복되는 횟수의 수 (i)만큼 num에 계속해서 더한다. print()를 통해 num을 출력해주면 된다. ⭐ 주의사항 여기서 주의할 것은 print(num)를 for문 밖으로 빼서 출력시켜야 한다는 거다. for문 내에 print(n..
[BOJ/Python] 2739 구구단
·
💻IT Dev/Algorithm
📌 문제 2739번: 구구단 N을 입력받은 뒤, 구구단 N단을 출력하는 프로그램을 작성하시오. 출력 형식에 맞춰서 출력하면 된다. www.acmicpc.net 📌 내 코드 # 2739 구구단 n = int(input()) for i in range(1, 10): mul = n * i print(n, '*', i, '=', mul) 💡 풀이 n으로 단에 들어갈 수를 입력 받은 후, for문을 통해 1에서 9까지 반복시켜준다. 이 때 range 내에서 반복 범위 설정 시 뒤의 수는 9+1 = 10으로 설정한다. 그냥 9로 설정하면 n * 8까지만 반복해 출력하니 유의해야 한다. 이후 입력받은 n과 i의 곱한 값을 mul 이라는 변수에 담아주고, print()내에서 각 수들과 연산 기호를 나열해 넣어준다. 이..
[BOJ/Python] 10950 A+B - 3
·
💻IT Dev/Algorithm
📌 문제 10950번: A+B - 3 두 정수 A와 B를 입력받은 다음, A+B를 출력하는 프로그램을 작성하시오. www.acmicpc.net 📌 내 코드 # 10950 A+B (3) t = int(input()) for _ in range(1, t+1): a, b = map(int, input().split()) sum = a+b print(sum) print() 💡 풀이 테스트케이스를 입력 받은 후, for문을 통해 입력받은 테스트케이스 수만큼 a와 b를 입력받는다. 이 때 a, b를 input()으로만 입력 받으면 안된다. 정수형이 아니라 문자형으로 인식해서 디버깅 돌릴 때 에러가 떴었다. 그래서 map()으로 감싼 후, 정수형으로 입력받도록 int를 포함시켰다. 이후 a+b 연산 값을 sum으로 ..
[BOJ/Python] 2480 주사위 세 개
·
💻IT Dev/Algorithm
📌 문제 2480번: 주사위 세개 1에서부터 6까지의 눈을 가진 3개의 주사위를 던져서 다음과 같은 규칙에 따라 상금을 받는 게임이 있다. 같은 눈이 3개가 나오면 10,000원+(같은 눈)×1,000원의 상금을 받게 된다. 같은 눈이 2개 www.acmicpc.net 📌 내 코드 # 2480 주사위 세 개 a, b, c = map(int, input().split()) if a==b==c: print(10000+a*1000) elif a==b or b==c or c==a: print(1000+a*100) elif a!=b!=c: print(max(a, b, c)*100) 💡 풀이 a와 b가 같을 때, b와 c가 같을 때, c와 b가 같을 때의 수행 코드가 동일해서 or로 묶어서 코드를 짰는데, 파이참에..
[BOJ/Python] 1330 두 수 비교하기
·
💻IT Dev/Algorithm
📌 문제 1330번: 두 수 비교하기 두 정수 A와 B가 주어졌을 때, A와 B를 비교하는 프로그램을 작성하시오. www.acmicpc.net 📌 내 코드 # 1330 두 수 비교하기 a, b = map(int, input().split()) if a > b: print('>') elif a < b: print('
[BOJ/Python] 10430 나머지
·
💻IT Dev/Algorithm
📌 문제 10430번: 나머지 첫째 줄에 A, B, C가 순서대로 주어진다. (2 ≤ A, B, C ≤ 10000) www.acmicpc.net 📌 내 코드 # 10430 나머지 a, b, c = map(int, input().split()) print((a+b)%c, ((a%c)+(b%c))%c, (a*b)%c, ((a%c)*(b%c))%c, sep='\n') 💡 풀이 a, b, c를 정수형으로 입력받는다. 처음엔 map() 사용 없이 정수형을 input() 안에 넣거나, input()을 감싸서 받으려고 했는데, 후자의 경우 파이참에서 빌드하니 값을 입력할 수 없었고, 계속 0만 나오는 상황이 발생했다. 그래서 알고리즘 스터디 당시 배열 문제를 풀 때 자주 활용했던 map()으로 input()을 감싸주..
[BOJ/Python] 10926 ??!
·
💻IT Dev/Algorithm
📌 문제 10926번: ??! 준하는 사이트에 회원가입을 하다가 joonas라는 아이디가 이미 존재하는 것을 보고 놀랐다. 준하는 놀람을 ??!로 표현한다. 준하가 가입하려고 하는 사이트에 이미 존재하는 아이디가 주어졌을 때 www.acmicpc.net 📌 내 코드 # 10926 ??! id = input() print(id+"??!") 💡 풀이 입력을 이미 존재하는 아이디로 받는다고 했기 때문에 별도의 조건문을 추가할 필요가 없었다. 그래서 변수명 id로 입력받은 후, 출력 시 ??!가 뒤에 따라 나오도록 print() 안에서 ??!를 추가해줬다. 📌 정리 단계별로 꾸준히 문제를 풀어나가면서 파이썬 문법을 익히고, 추후에는 알고리즘 이론 복습 후 문제에 응용해봐야겠다. 적극적인 피드백은 언제나 환영입니..