목록전체 글 (601)
sm 기술 블로그
기본 입력값 인식값 내용관련 입력값 인식값 서버 관련 입력값 인식값 프로토콜 관련 입력값 인식값 추가 파라미터 입력값 인식값 입력값 인식값 입력값 인식값 추가
import java.util.*; import java.io.*; class Main { public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); int N = Integer.parseInt(br.readLine()); int[][] Eline = new int[N][N]; int[] DP = new int[N]; for (int i = 0; i < N; i++) { String[] tmp = br.readLine().split(" "); Eline[i][0] = Integer.parseInt(tmp[0]); Eline[i..
import sys input = sys.stdin.readline N = int(input()) Eline = sorted([list(map(int,input().split())) for _ in range(N)]) DP = [1 for _ in range(N)] for i in range(N): for j in range(i): if Eline[i][1] > Eline[j][1]: DP[i] = max(DP[i], DP[j]+1) print(N-max(DP)) 문제요약 서로 교차되지 않게 할때 제거 할 전깃줄 최소 개수 설명 LIS (최장증가수열) 를 이용하면 된다. DP는 설치 가능한 갯수를 뜻한다. 따라서 총 전깃줄 - 서로 교차되지 않는 최대의 를 해주면 제거해야할 최소의 전깃줄 개수가 나오게 ..
import java.util.*; import java.io.*; class Main { public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); int N = Integer.parseInt(br.readLine()); int[] num = new int[N]; int[] numReverse = new int[N]; int[] numDpIncrease = new int[N]; int[] numDpDecrease = new int[N]; int[] result = new int[N]; String[] tmp = br.read..