Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
Tags
- tableplus
- 개발자공통지식
- 데이터스키마
- 개발공식문서 어려움
- 개발 공식문서
- 개발자되기
- golang
- 개발 공식문서 읽기
- 개발 영어실력
- Go언어
- jsx
- 컴공과개념정리
- 유데미
- 코멘토
- 스키마모델
- postgredb
- HTTP
- 코멘토실무PT
- 개발실무
- 파이썬
- 데이터베이스
- 자료구조
- 코딩강의
- 자바
- 리액트
- Go언어실무
- 개발공부
- 실무PT
- 알고리즘
- 웹서버
Archives
- Today
- Total
웹개발일지
[백준2420] 여러 값 정수로 입력받기 & 절댓값함수의 사용 - Python 본문
728x90
이 글은 백준 2420을 풀며 관련 개념을 정리한 내용입니다.
2420번: 사파리월드
첫째 줄에 두 도메인의 유명도 N과 M이 주어진다. (-2,000,000,000 ≤ N, M ≤ 2,000,000,000)
www.acmicpc.net
문제파악
두 정수가 주어지면 절댓값을 구하는 문제였다.
첫 접근방식
조건문으로 두 수의 차를 양수로 나오게 할 알고리즘을 구현했다.
a,b = int(input(" 두 수를 입력하세요"))
if a >= b:
a-b
else :
b-a
print(type(a, b))
두 번 런타임 에러 (value error)가 나서 찾아보니 타입 오류라는 것이었고 테스트를 위해 타입 출력도 해보았으나 첫 번째 줄에서 나는 오류였다. 그런데 알고보니 정수로 여러 값을 받으려면 map으로 감싸주어야하는 이슈가 있었다.
파이썬에서 값을 받는 방법
1. 문자열 입력받기
N= input()
2. 숫자로 입력받기
N = int(input())
3. 여러개 입력받기
N, N = input.split()
4. 여러개를 숫자로 입력받기
N, M = map(int, input().split())
5. 리스트로 입력받기
numbers = [int(x) for x in input().split()]
이 문제를 풀려면 값은 위 4번의 방식으로 받고, 파이썬에서 기본으로 제공하는 절댓값 함수를 사용하면 됐다.
절댓값 구하는 함수
abs(N-M)
정답 성공 코드
a, b = map(int, input().split())
print(abs(a-b))
파이썬으로 문제를 풀다보면 정수의 범위는 신경쓰지 않아도 되는 것인가 궁금했는데, 알아보니 파이썬에는 오버플로우가 없어서 그냥 연산만 해주면 된다고한다. Go에서는 정수의 범위를 지정해줬어야 했다.
'자료구조와 알고리즘' 카테고리의 다른 글
DFS와 BFS (0) | 2023.01.25 |
---|---|
Arraylist vs Linkedlist (0) | 2023.01.18 |
[자료구조/알고리즘] 맵과 집합 map, set - 파이썬 (0) | 2023.01.12 |
[백준 4101] 입출력과 제어문 사용 문제 - 파이썬 (0) | 2023.01.11 |
[자료구조/알고리즘] 우선순위 큐 Priority Queue (Heap) - 파이썬 (0) | 2023.01.11 |