파이썬 4

[백준]6086 최대유량 #최대유량#에드몬드_카프#파이썬

1. 풀이 최대유량을 구해주기 위해선, 시점부터 종점까지 (1)가능한 경로와 경로상의 최소 유량 찾기, (2)현재상태를 업데이트 하는 과정을 더이상 가능한 경로가 없을 때 까지 해주면 된다. 각각의 과정에 대한 구체적인 설명은 다음과 같다. (1) 가능한 경로와 그때의 유량 찾기 - bfs 경로를 찾을 때는 bfs로 탐색을 한다. 이때 한번 탐색한 노드는 다시 탐색하지 않기 위해 (흔히 bfs문제를 풀 때 하는) visited노드로 관리를 해줘야 한다. 이때 단순히 방문하면 1, 그렇지 않으면 0으로 하는게 아니라 해당 노드의 경로상의 직전의 노드를 저장해놓는다 (그래서 이름도 visited가 아니라 prev로 한다). 왜냐하면 (2)현재상태를 업데이트 에서 경로를 따라가며 상태를 업데이트 해야 하기 때..

알고리즘/graph 2020.08.23

문자열 함수

"string".zfill(width) 앞에 0을 채워서 스트링의 길이 width로 맞춤 "string".rjust(width,"c") c를 앞에 채워 스트링의 길이를 width에 맞춤 s.isalpha() 영문자인지 확인, 영문자면 true 리턴 chr(num) num번째 아스키코드 리턴 ord("string") string의 아스키코드 리턴 s.lower() 문자를 모두 소문자로 s.upper() 문자를 모두 대문자로 s.isalpha() 영문자인지 확인, 영문자면 true 리턴 s.replace("찾을값","바꿀값","바꿀횟수") 앞에서 부터 "찾을값"을 "바꿀값"으로 "바꿀횟수"만큼 바꿈. "바꿀횟수"를 주지않으면 모든 문자열에있는 "찾을값"을 다 바꿈

if문 속 조건문의 순서

if문속에 다양한 조건문이 들어갈 때 조건문은 앞에서부터 차례대로 판단된다. ​​ 1. 오류구문이 앞에 있을때 L=[1,2,3,4] i=4 if (L[i]==0 or i==4): print("실행?") #오류 if 조건문속 L[i]는 i가 4이므로 indexErrror이 발생함. 따라서 위 코드는 에러 1. 오류구문이 뒤에 있을때 L=[1,2,3,4] i=4 if ( i==4 or L[i]==0 ): print("실행?") #작동 i=4라는 조건문에 의해 L[i]==0 이라는 조건문은 판단되지 않고 이하 if문 이하 명령문 실행.