본문 바로가기

문제풀이4

[algorithm] 백준: 2588 곱셈 2588 답: 더보기 a = int(input()) b = int(input()) b_list = [] def seperate(number): # 1의자리 ~ 높은 자리수 리스트 만들기 while (number != 0): b_list.append(number % 10) number = number//10 return b_list seperate(b) print(b_list[0] * a, b_list[1] * a, b_list[2] * a, a * b, sep='\n') 문제 분석 및 해석 """ 세자리 자연수 2개를 각각 a b라고 부를때, (1) a, b를 각각 1, 2 줄에 입력값을 받는다 (2) b를 각각의 자리수로 나누어야 곱할 수 있으니 나누어서 각 줄에 적어준다. 3 b의 1자리수와 a를 곱.. 2023. 4. 3.
[algorithm] 백준: 10430 나머지 10430 답: 더보기 A, B, C = map(int, input().split()) one = (A + B) % C two = ((A % C) + (B % C)) % C three = (A * B) % C four = ((A % C) * (B % C)) % C print(one, two, three, four, sep='\n') 문제 분석 및 과정 - 10430 문제 내용에서 필요없는 내용을 지운다. (출력값에 필요한 것이 아닌 단순한 의문이므로.) (A+B)%C는 ((A%C) + (B%C))%C 와 같을까? (AxB)%C는 ((A%C) x (B%C))%C 와 같을까? 세 수 A, B, C가 주어졌을 때, 출력 : 각각의 값을 차례로 4줄로 출력. 입력 : 첫째줄에 A, B, C가 순서대로 주어진다... 2023. 4. 2.
[algorithm] 백준: 10926 ??!, 18108 불기연도 계산 10912: 문자열에 ??! 붙이기 문제 분석: 어떤 입력값, 소문자 문자열이 들어오면(input) 이 문자열이 이미 존재한다고 가정하여 + ??!을 붙여 출력. 문제에 장황하게 써있지만 지우고 보면 간단하다. 풀이: 파이썬에서는 +를 사용해 문자열끼리 그냥 붙일 수 있다! print(input() + "??!") 18108: 불기연도를 서기연도로 계산 문제 분석: 서기 연도를 알아보고 싶은 불기 연도 y가 주어진다. (1000 ≤ y ≤ 3000) > 불기 연도인 y 가 "주어진다." = input()에 저절로 값이 입력될 것이다. 불기연도를 입력받으면 서기연도가 나오는 함수를 만들어야한다. 서기 연도를 x로 가정 x + 543 = y x = y - 543 과정: 단순히 풀면 x = y - 543이니.. 2023. 3. 30.
[algorithm] 백준 : 10869 사칙연산 풀이 힘든 개인과제를 끝내고 해설도 듣고.. 자신감이 넘쳐 신나서 백준을 켰다. 신나서..... 켰다.. a, b = int(input().split()) def calculator(): sum = a + b sub = a - b mul = a * b div = a / b extra = a % b print(sum) print(sub) print(mul) print(div) print(extra) calculator(a, b) 자 여기에서 문제점은? 1. int로 input().split()을 묶었다 2. 함수가 문제다 3. 나누기를 했다 정답은 ~ 셋 다 입니다^.^... 자꾸 문법이랑 조건 생각안하고 쓰면 큰일이 납니다.. 문제 1번을 분석해보자 input() 받은 string"a b"를 split()으로.. 2023. 3. 29.