문제 인프런 저작권 문제 코드 n,m = map(int,input().split()) Line=[] def Count(len): cnt = 1 endpoint = Line[0] for i in range(1, n): if Line[i]-endpoint >= len: cnt +=1 endpoint = Line[i] return cnt for _ in range(n): tmp=int(input()) Line.append(tmp) Line.sort() rt = Line[n-1] lt=1 while lt= m: #배치 할 수 있는 마리 수 res=mid lt=mid+1 else: rt=mid-1 print(res) 접근법 이분 탐색으로 접근해서 가장 좋은 수를 찾는 방법이다 배운 점 이분 탐식 시 lt에 마냥 ..
자료구조&알고리즘/인프런
문제 코드 n = int(input()) ls = [list(map(int,input().split())) for _ in range(n)] lt = rt = n//2 cnt = 0 for i in range(n): for j in range(lt, rt+1): cnt +=ls[i][j] if i < n//2: lt -=1 rt +=1 else: lt +=1 rt -=1 print(cnt) 접근법 List의 진하게 칠해진 부분에 접근 하는 알고리즘이 중요하였다 배운 점 row에 따라 하나 씩 양 옆으로 커져가는 2중 list의 원소에 접근하는 방법을 배웠다.