반응형
곱셈
시간 제한메모리 제한제출정답맞힌 사람정답 비율
1 초 | 128 MB | 176714 | 84381 | 72300 | 48.542% |
문제
(세 자리 수) × (세 자리 수)는 다음과 같은 과정을 통하여 이루어진다.
(1)과 (2)위치에 들어갈 세 자리 자연수가 주어질 때 (3), (4), (5), (6)위치에 들어갈 값을 구하는 프로그램을 작성하시오.
입력
첫째 줄에 (1)의 위치에 들어갈 세 자리 자연수가, 둘째 줄에 (2)의 위치에 들어갈 세자리 자연수가 주어진다.
출력
첫째 줄부터 넷째 줄까지 차례대로 (3), (4), (5), (6)에 들어갈 값을 출력한다.
예제 입력 1 복사
472
385
예제 출력 1 복사
2360
3776
1416
181720
출처
Olympiad > 한국정보올림피아드 > 한국정보올림피아드시․도지역본선 > 지역본선 2005 > 초등부 2번
정답 코드 :
1번 방식
a = int(input())
b = int(input())
print(a*(b%10))
print(a*(b%100//10))
print(a*(b//100))
print(a*b)
2번 방식
a = int(input())
b = input()
print(a*int(b[2]))
print(a*int(b[1]))
print(a*int(b[0]))
print(a*int(b))
풀이 :
1번 방식은 사칙연산을 통해 b 3자리 수의 첫번째, 두번째, 세번째 자리의 숫자를 구한다.
b가 123이라면
b%10 -> 10으로 나눈 나머지 = 일의 자리 수 3
b%100//10 -> 100으로 나눈 수의 나머지 (23) 을 다시 10으로 나눈 몫 = 2
b//100 -> 100으로 나눈 몫 = 1
2번 방식은 처음에 b 값을 입력받을 때 숫자 형식으로 바꿔주는 int()를 쓰지 않고 그대로 Input() 받는다. (문자, 스트링 형식)
그리고 b[0], b[1], b[2] 를 사용해서 각 자리의 수를 int()로 다시 바꾼 후 곱해준다.
스트링으로 입력받는 이유는 숫자 형식은 123[0] 이렇게 사용이 되지 않기 때문이다.
반응형
'Python > Python 코딩테스트' 카테고리의 다른 글
[백준] 2753번 윤년 파이썬 python (0) | 2022.01.25 |
---|---|
[백준] 10430번 나머지 파이썬 python (0) | 2022.01.24 |
[백준] 10171번 고양이 파이썬 python (0) | 2022.01.24 |
[백준] 10172번 개 파이썬 python (0) | 2022.01.24 |
[그리디 알고리즘18] 백준 11497 통나무 건너뛰기 파이썬 (0) | 2021.07.25 |
댓글