본문 바로가기

코딩 테스트/do it! 알고리즘 코딩테스트100

100 다각형의 면적 첫번째 코드 원점과의 외적을 통해서 삼각형의 넓이를 구하는 방법을 이용하여 다각형의 넓이를 구하는 것이 참신했다.의외였던 것은 2개의 점을 이용하여 구하는 방식으로 넓이가 알아서 더하고 빼지는...우오어마지막에 양수로만 만들면 되는!! 신기했다!!고등학생때도 이런 방법을 쓴 적이 있었던 것 같은뎅... 책의 방법을 참고하여 코드를 작성하고책을 참고하여 일부 수정하였다. import sys input = sys.stdin.readline n = int(input()) x_list = [] y_list = [] answer = 0 for _ in range(n):     x, y = map(int, input().split())     x_list.append(x)     y_list.append(y) x_.. 2024. 9. 19.
099 선분 그룹 (미해결) 첫번째 코드 이해가 되지 않은 부분이 있어 이해 후에 코드를 다시 작성할 예정이다. 유니온 파인드와 CCW를 함께하는 과정인데,유니온 파인드 부분의 이해가 되지 않아 고군분투 중이다...ㅋ링크 2024. 9. 19.
097 CCW 첫번째 코드  기하와 CCW를 이용하여 푸는 문제로개념 문제로 바로 작성할 수 있었다!! import sys input = sys.stdin.readline x1, y1 = map(int, input().split()) x2, y2 = map(int, input().split()) x3, y3 = map(int, input().split()) CCW = (x1 * y2 + x2 * y3 + x3 * y1) - (x2 * y1 + x3 * y2 + x1 * y3) if CCW     print(-1) elif CCW == 0:     print(0) else:     print(1) 통과!링크https://github.com/ornni/programmers/tree/main/%EB%B0%B1%EC%A4%8.. 2024. 9. 17.
098 선분 교차 2 첫번째 코드 선분이 교차하는 경우를 책의 개념을 통해 이해했다.뭔가 이해보다는 암기의 느낌이 강했다...ㅋㅋㅋㅋ ABC: AB를 기준으로 C의 CCW 구하기ABD: AB를 기준으로 D의 CCW 구하기CDA: CD를 기준으로 A의 CCW 구하기CDB: CD를 기준으로 B의 CCW 구하기 선분이 교차하는 경우ABC * ABD = 음수 and CDA * CDB = 음수0인 경우 min max x, y를 통해 구할 수 있다!! 코드는 책을 참고했다. import sys input = sys.stdin.readline x1, y1, x2, y2 = map(int, input().split()) x3, y3, x4, y4 = map(int, input().split()) def CCW (x1, y1, x2, y2,.. 2024. 9. 17.
096 가장 긴 증가하는 부분 수열 5 첫번째 코드 먼저 점화식을 세우는 방법알기!!아이디어 만들어보기!!DP 코드 작성하는 방법 연습하기!! 책의 코드를 참고했다!! import sys input = sys.stdin.readline n = int(input()) a = list(map(int, input().split())) a.insert(0, 0) index = 0 maxlength = 1 B = [0] * 1000001 D = [0] * 1000001 ans = [0] * 1000001 B[maxlength] = a[1] D[1] = 1 def binarysearch(l, r, now):     while l         mid = (l + r) // 2         if B[mid]             l = mid + 1  .. 2024. 9. 12.
095 외판원 순회 (미해결) 첫번째 코드 이해가 되지 않은 부분이 있어 이해 후에 코드를 다시 작성할 예정이다. 이진수를 이용해서 표현하여 문제를 푸는 방식이다.해당 방법은 처음 보는 방법으로 언제 이진수를 이용하는 것이 좋은지 알아볼 필요가 있다.링크 2024. 9. 12.
728x90