본문 바로가기

PS

(58)
[백준] 2561번 세 번 뒤집기 문제 : https://www.acmicpc.net/problem/2561 문제요약 : 수열의 구간 (xi,yi)를 순차적으로 뒤집어 원래 수열로 만들 때, xi,yi(i=1~3) 를 출력하라 조건 : 1. 정수 N (5≤N≤1000) 2. 구간[i,i]를 뒤집으면 아무런 변화가 없는데 이러한 것도 허용이 된다. 해설 : 주어진 수열의 부분수열을 뒤집는 행위를 세 번 반복하여 1, 2, ... ,N이 되는 수열로 만드는 문제다. 조건 2를 보면 굳이 세 번 뒤집을 필요가 없음을 알 수 있다. 즉, 두 번 뒤집고 1,1을 뒤집거다 한 번 뒤집고 1,1을 두번 뒤집으면 되는 것이다. 우선 처음 수열이 1씩 증가하는 수열이기때문에 이 수열을 세 번 뒤집으면 1씩 증가하거나 1씩 감소하는 부분이 k개 생긴다. ..
[백준] 1604번 정사각형 자르기 문제 : https://www.acmicpc.net/problem/1604 문제요약 : N개의 선분들이 (-10,-10)(-10,10)(10,10)(10,-10)으로 이루어진 정사각형을 몇개의 영역으로 나누는가? 조건 : 1. (-1000≤x1,y1,x2,y2≤1000) 2. 선분의 양 끝점은 정사각형 밖에 있다. 3. 두 선분은 같은 직선 상에 있지 않다. 4. 세 개 이상의 직선은 한 점에서 교차하지 않는다. 해설 : 사실 생각해보면 꽤 간단한 문제임을 알 수 있습니다. 선분이 아닌 직선으로 보았을 때 직선간의 교점의 수가 하나 늘 때마다 평면의 영역은 하나씩 늘게 됩니다. 마찬가지로 위 문제는 정사각형 영역만을 보았을 때 그 위를 지나가는 직선들간의 교점의 개수를 확인하면 됩니다. 교점의 개수 : ..