본문 바로가기

python27

python 백준 14501 import sysinput = sys.stdin.readline# 첫째 줄 n#둘째줄 n개의 줄 ti pi 공백. ti 시간 pi 공백n=int(input())graph=[]for i in range(n): a,b=map(int,input().split()) graph.append([a,b])dp=[0 for _ in range(n+6)] #구조 안헷갈리기 : n-1 부터 0 까지 dp 채워져 있고, for i in range(n-1,-1,-1): if i + graph[i][0] >= n: dp[i] = dp[i+1] else: dp[i] = max(dp[i+1], graph[i][1]+ dp[i+graph[i][0]]) .. 2024. 8. 26.
백준 Python 14499 import sysinput = sys.stdin.readline.rstrip# 주사위 각 면의 초기화 (1~6번 면)dice = [0] * 7# 지도 크기 및 시작 위치, 명령 수 입력n, m, x, y, k = map(int, input().split())# 지도 입력graph = []for i in range(n): lst = list(map(int, input().split())) graph.append(lst)# 이동 방향 정의 (동서북남 순)dx = [0, 0, -1, 1]dy = [1, -1, 0, 0]# 현재 주사위의 위치position = [x, y]# 명령어 리스트moves = list(map(int, input().split()))# 주사위 이동 함수들def move_eas.. 2024. 8. 10.
파이썬 코딩테스트 꿀팁 : 입력 한번에 받기 파이썬 코딩테스트에서 이련 입력이 많았다. graph=[]for i in range(n):    graph.append(int(input()))                 그러면 귀찮게 12345이렇게 입력해야한다 그래서 차라리; import sysinput = sys.stdin.readlinen, m = map(int, input().split())graph = [list(input()) for _ in range(n)]for i in range(n):    for j in range(m):        if graph[i][j] == 'R':            rx, ry = i, j        elif graph[i][j] == 'B':            bx, by = i, j  이러면 굳.. 2024. 7. 24.
백준 python 13460 하 왜 안되냐from collections import dequeinput_data = """10 10###########R#...##B##...#.##.######.##.##......#.##.######.##.#....#.##.#.##...##O..#....###########"""input_lines = input_data.split('\n')def input():    return input_lines.pop(0)n,m = map(int,input().split())# . o R B '# '주어짐graph=[]# 본 그래프 입력for i in range(n):    line = list(map(str,input()))    graph.append(line)#그래프 입력 잘 됐는지 출력#구슬 위치 .. 2024. 7. 7.
백준 14502 Bfs 2차원 https://great-park.tistory.com/104 [BOJ/백준] 14502번 연구소 (Python 파이썬)https://www.acmicpc.net/problem/14502 14502번: 연구소 인체에 치명적인 바이러스를 연구하던 연구소에서 바이러스가 유출되었다. 다행히 바이러스는 아직 퍼지지 않았고, 바이러스의 확산을 막기 위해서 great-park.tistory.com 2024. 6. 7.
[python] [문법] 2차원 리스트 이걸로 끝 리스트를 사용 할 때 한 줄로 늘어진 1차원 리스트라면, 리스트 2개를 사용한다면 2차원 리스트가 된다. 쉽게 말하면 표의 행과 열의 구분이다. a = [[10, 20],[30, 40],[50, 60]]이는 3행 2열이다.그래서 a의 길이는 3이다.    이제 이를 for문을 통해 출력을 한다고 과정 했을 때a = [[10, 20], [30, 40], [50, 60]]print(a)for i in a: for j in i: print(j)2개의 리스트를 사용하기 때문에 2개의 for문이 필요하다.  그러나 파이썬을 사용하므로 간략하게 쓰는 방법도 있다.a = [[10, 20], [30, 40], [50, 60]]for x, y in a: print(x, y)이렇게 for문 하나로도 이차.. 2024. 1. 27.
[python] [문법] 2차원 list 진짜 잘 알려줌 1. 2차원 리스트의 구조 2차원 리스트는 1차원 리스트를 묶어놓은 구조로, 많이 사용되는 자료구조 중 하나이다. 2차원 리스트의 선언은 세로길이(행의 개수), 가로길이(열의 개수)를 필요로 한다.ex) 2행 4열의 2차원 리스트a = [ [0, 1, 2, 3], [4, 5, 6, 7] ]01234567이제 리스트를 선언하고 초기화 하는 방법에 대해 알아보자.    2. 리스트 초기화 arr = [0, 0, 0, 0, 0]arr = [0] * 5arr = [i for i in range(2, 9) if i % 2 == 0] # [2, 4, 6, 8]brr = [[1, 2, 3], [1, 2, 3], [1, 2, 3]]brr = [[1, 2, 3]] * 3brr = [[1, 2, 3] for i in ra.. 2024. 1. 27.
[python] [문법] 대문자 변환법 알려줌 대문자로 변환하는 메소드 upper() : 모든알파벳을 대문자로 변환 capitalize() : 맨 첫글자만 대문자로 변환 title() : 알파벳 외의 문자(숫자, 특수기호, 띄어쓰기 등)로 나누어져 있는 영단어들의 첫 글자를 모두 대문자로 실제로 확인해보았다. A='abcd' print(A.upper()) #ABCD print(A.capitalize()) #Abcd print(A.title()) #Abcd B='a2b3c4' print(B.upper()) #A2B3C4 print(B.capitalize()) #A2b3c4 print(B.title()) #A2B3C4 C="abc-def efg" print(C.upper()) #ABC-DEF EFG print(C.capitalize()) #Abc-def.. 2024. 1. 25.
[python] [문법] reverse 알려줌 거꾸로 루프 돌리기 다음과 같이 5개의 알파멧 문자를 담고 있는 리스트를 어떻게 루프 돌면서 각 문자를 출력할 수 있을까요? letters = ['A', 'B', 'C', 'D', 'E'] 아마도 다음과 같이 간단한 for 문으로 어렵지 않게 각 문자에 순서대로 접근할 수 있을 것입니다. for letter in letters: print(letter) 결과 A B C D E 그럼 역방향으로 각 문자에 접근하려면 어떻게 해야할까요? 이럴 때는 다음과 같이 파이썬에 내장된 reversed() 함수를 사용합니다. for letter in reversed(letters): print(letter) 결과 E D C B A 혹시 다음과 같이 range() 함수를 이용해서 인덱스를 역순으로 만들어내는 것을 먼저 떠.. 2024. 1. 25.
[python] [문법] for문 간단하게 쓰기 [python] [문법] for문 간단하게 쓰기 바로 리스트 내에서 for문을 선언하는 방법입니다. 리스트 컴프리헨션(Comprehension)이라고 불리웁니다. 먼저 리스트 컴프리헨션을 사용하지 않는 기존의 방법으로 예시를 들어 보겠습니다. 1 2 3 a = [] for x in range(0, 5): a.append(x) cs 생성한 리스트에 0부터 4까지 for문으로 넣는 소스코드입니다. 우리가 흔히 알고있는 정석대로 코딩을 했는데 이것보다 더 간단하게 사용할 수 있다고 해서 저도 흠칫했습니다. 1 a = [x for x in range(0, 5)] cs 이게 끝입니다. 어떻게 들어간건지 간단하게 설명부터 드리자면 for문 앞에 x 가 반복문의 변수 선언을 의미하고 그 뒤부터는 우리가 알고 있는 f.. 2024. 1. 20.
[python] [문법] [튜플] python 튜플 합치기 2024. 1. 20.
[python] 파이썬에 대해 분석해보자 -요약- 1. 파이썬 특징: 스크립트 언어, 동적 타입 언어, 플랫폼 독립적 2. 장점: 사용이 쉬움, 빠른 개발속도, 높은 확장성 및 이식성 3. 단점: 느리다(컴파일 언어에 비해) + GIL 1. 파이썬은 어떤 언어? 파이썬은 전공자는물론 비전공자에게도 사랑받는 아주 인기있는 언어입니다. 특히, 최근들어 데이터 분석을 python으로 많이 하게 되면서 더욱 인기를 끌고 있죠. 1991년 귀도 반 로섬(Guido van Rossum)이라는 프로그래머에 의해 개발된 언어인 python은 문법위 쉽다. 가독성이 높다. 이 두가지 이유로인해 많은 사람들이 편하게 사용하고 있습니다. 다만, 단순이 배우기 쉽다는 이유만으로 언어를 제대로 사용하기에 문제가 있다고 판단되어 아래에 한번 그 특징 및 장/단점을 정리.. 2024. 1. 19.