Problem Solving
[문법] Problem Solving을 하면서 필요한 Python기본 문법
by Bokoo14
2023. 1. 4.
# 파이썬 문법
import sys
input = sys.stdin.readline
# —————————————————————————
# 한 줄에 여러개의 값 받아오기 (띄어쓰기로 값 구분) N개의 줄을 받아오기
A=[list(map(int, input().split())) for _ in range(N)]
# 한 줄에 여러 개의 값 받아오기(띄어쓰기로 값 구분) 1개의 줄만 받아오기
array=list(map(int, input().split()))
# 한 줄에 여러 개 받아오기(띄어쓰기 없음) N개의 줄 받아오기
video = [list(map(int,input().strip())) for _ in range(N)]
# —————————————————————————
# 각 자리수의 합
s = sum(map(int, list(str(m))))
N=[int(i) for i in str(n)]
ss=sum(N)
# —————————————————————————
# 재귀관련
현재 재귀 횟수의 상한을 가져옵니다.sys.getrecursionlimit()
재귀 횟수의 상한을 변경합니다. sys.setrecursionlimit(10**6)
스택의 최대 크기 변경:resource.setrlimit()
# —————————————————————————
# 정렬
# 원래의 배열을 정렬
array.sort() # 오름차순 정렬
array.sort(reverse=True) # 내림차순 정렬
# 원래 배열은 그대로
s = sorted(array) # 원래의 배열은 그대로, s에 정렬된 값을 저장
# 좌표 정렬
array = [tuple(map(int, input().split())) for _ in range(N)]
# x좌표가 증가하는 순, y좌표가 증가하는 순서로 정렬
array.sort(key=lambda x: (x[0], x[1]))
# x좌표는 오름차순, y좌표는 내림차순 정렬
nums = [list(map(int, input().split())) for _ in range(N)]
nums.sort(key = lambda x: (x[0], -x[1]))
# 길이가 짧은 것부터, 길이가 같으면 사전 순으로 정렬
array.sort(key = lambda x: (len(x), x))
# 대소문자구분없이 문자로 정렬, 같은 문자라면 소문자가 먼저 오게 정렬
# 대소문자 구분없이 정렬하고, 아스키코드 값을 이용해서 정렬
# A: 65 a: 97
c.sort(key = lambda x : (x.upper(), -ord(x)))
# —————————————————————————
# join으로 붙여서 출력
for i in range(N):
print(" ".join(map(str, nums[i])))
# —————————————————————————
# 리스트 거꾸로 하기
s = s[::-1]