[백준 2428번] 표절 풀이
2428번: 표절 첫째 줄에 제출한 솔루션의 개수 N이 주어진다. 둘째 줄에는 각 솔루션 파일의 크기 size(F1), size(F2), ..., size(FN)이 주어진다. (1 ≤ N ≤ 100,000, 1 ≤ size(Fi) ≤ 100,000,000) 솔루션 파일의 크기는 정수이 www.acmicpc.net N개의 파일 F1, F2, F3, ... FN이 주어질 때, Fi = Fj*0.9 인 두 파일쌍의 개수를 세면 된다. 가장 간단한 풀이는 이중 for문으로 두 파일을 조합을 선택하여 Fi = Fj*0.9 를 만족하는 (Fi, Fj) 쌍을 카운트하면 된다. 하지만 이렇게 풀게 되면 시간 복잡도는 O(N^2)으로 입력 값의 개수가 큰 경우 시간 초과를 얻게 된다. 다른 풀이 방법으로, 정렬과 이분탐..
2021. 9. 25.
[백준 2103번] 직교다각형 복원 풀이
2103번: 직교다각형 복원 첫째 줄에 점의 개수 N(1≤N≤100,000)이 주어진다. 다음 N개의 줄에는 각 점의 x, y(0≤x, y≤10,000)좌표가 주어진다. 이 점들은 직교다각형을 이루는 순서대로 주어지지 않을 수도 있으며, 같은 점이 www.acmicpc.net 직교 다각형이란 모든 변이 x축이나 y축에 평행한 다각형을 말한다. 문제에서 제시한 정사각형 이외에도, 아래와 같은 다양한 직교 다각형을 만들 수 있다. 문제에서 요구한 것은 직교 다각형의 꼭짓점들이 주어졌을 때, 둘레를 구하는 것이다. 도형의 둘레는 가로 변들의 합과 세로 변들의 합으로 나누고 이들을 더해 구할 수 있다. d(A, B)를 A, B 두 점 사이의 거리라 할때, 가로변들의 합 = d(A, B) + d(C, D) + d..
2021. 9. 25.