파이썬

·CS/백준 풀이
불만없제. 그건 그렇고 게시글 너무 밀려버렸다..
·CS/백준 풀이
마침 스택을 보고 와서인지 문제를 보자마자 스택이 떠올랐다. 1. 스택이 비었다면 입력값을 추가한다. 2. 입력값과 스택의 마지막값이 같다면, 스택에 입력값을 추가한다. 3. 또한 스택의 마지막값이 )이고, 입력값이 (일때도 추가한다. 4. 스택에 남아있는 것이 없다면 YES, 남아있다면 NO를 출력하게 한다. n=int(input()) for _ in range(n): stack=[] inp=list(input()) for x in inp: if not stack: stack.append(x) else: pop=stack.pop() if pop==x or (pop==")" and x=="("): stack.append(pop) stack.append(x) if not stack: print("YES")..
·CS/백준 풀이
이녀석을 처음 만난 것은 1654번이다. 나는 평범하게 이 녀석의 모든 경우를 계산해서 해결하려고 했다. k,n=map(int,input().split()) a=[] res=[] for _ in range(k): a.append(int(input())) for y in range(1, min(a)+1): cnt=0 for x in a: cnt=cnt+x//y if(cnt>=n): res.append(y) print(max(res)) 결과는 시간초과. 그래서 찾다가 알게된 이진탐색. 아래는 개념이다. 이진탐색(Binary Search) 데이터가 정렬되어 있는 배열에서 특정 값을 찾아내는 알고리즘이다. 배열 중간의 값을 골리 찾는 값과 비교하고, 중간 값이 찾는 값보다 작으면 최소값을 중간값 +1로 바꾼다...
·CS/백준 풀이
그들과의 첫 조우 - 백준 1260번 이번 문제, 푸는데 20시간은 걸린거 같다. 그만큼 몰랐던 개념이 많았던 문제고 그에따라 많은 개념을 익혔다. 일단 문제를 풀며 가장 난이도를 느낀 부분이 그래프의 구현이었다. 나는 애초에 그래프가 뭔지도 몰랐다. 그리고 스택과 큐 역시 전공수업을 들으며 대충은 개념을 알고 있었지만, 실제로 써본 것은 처음이었다. 1. 그래프 그래프란 정점과 간선으로 이뤄진 자료구조다. 정확하게는 정점사이의 관계를 나타낸 자료다. 자 이걸 어떻게 프로그램한테 설명할 것인가? 크게 두가지 방법으로 표현 할 수 있다. 1) 인접 행렬 정점의 수에 따라 n*n의 2차원 리스트를 생성한뒤, 그 내용을 0으로 채워넣는다. 그 후에 1,2라는 정점사이에 간선이 존재한다면 arr[1][2]=1,..
·CS/백준 풀이
지금까지 적은게 영 부실한거 같아서 다시 한번 정리해서 적으려고 한다. 무지성 노베이스 파이썬으로 6월 25일부터 시작했다. 오늘부로 9일차 아래는 문제로 쳐맞아가며 배운 소중한 내용들이다. 배운 점 1. map(적용시킬 함수, 적용할 요소들) 2. split() -> 공백을 기준으로 나눠주는 함수 응용 : 임의의 숫자 두개(공백기준으로 나눔) 입력 a,b=map(int, input().split() 3. 연산자들(** : 거듭제곱, /: 실수형 나누기 //: 정수형 나누기) 4. 파이썬에서 특수한 문자(",',\)를 입력할땐 \를 앞에 붙여야 한다. 5. int(입력, 진수) -> 몰라서 리스트로 받아서 공식써서 변환시키려고 했음 6. d=list() -> 빈 리스트 생성 7. print(내용, end..
_0422
'파이썬' 태그의 글 목록 (8 Page)