만드는 중입니다

아직 만드는 중이라 바뀔 수 있습니다

Topical

면접 대비

시간 제한1초메모리 제한1024 MB

요약
벤슨이 k개 주제에 대한 모듈 n개의 지식 요구치와 증가량을 바탕으로 이수할 수 있는 모듈의 최대 개수를 구합니다.
난이도

보통10점 중 5점

유형
그리디, 정렬, 배열
정답자
아직 제출이 없습니다

문제

벤슨 토끼는 조종사 학교에 다니고 있다.

벤슨이 이수해야 할 모듈은 nn개이며, 1번부터 nn번까지 번호가 붙어 있다. 비행에는 kk개의 주제가 있으며, 1번부터 kk번까지 번호가 붙어 있다. 벤슨은 비행이 처음이라서 모든 주제의 지식이 0인 상태에서 시작한다.

각 모듈에는 요구 지식 기준이 있다. 모듈 ii를 이수하려면 모든 주제 jj에서 최소 r[i][j]r[i][j]만큼의 지식이 있어야 한다. 모듈 ii를 이수하면 모든 주제 jj의 지식이 u[i][j]u[i][j]만큼 늘어난다.

형식으로 나타내면, 주제 jj에서 벤슨의 지식을 p[j]p[j]라고 하자. 처음에는 모든 jj에 대해 p[j]=0p[j] = 0이다. 모든 주제 jj에 대해 p[j]≥r[i][j]p[j] \ge r[i][j]일 때만 모듈 ii를 이수할 수 있다. 모듈 ii를 이수하면 각 주제 jj에서 p[j]p[j]가 u[i][j]u[i][j]만큼 증가한다.

벤슨은 모듈을 어떤 순서로든 이수할 수 있지만, 각 모듈은 최대 한 번만 이수할 수 있다. 벤슨이 이수할 수 있는 모듈의 최대 개수를 구하라.

입력

첫째 줄에 공백으로 구분된 두 정수 nn과 kk가 주어진다.

이어서 nn개의 줄이 주어진다. 그중 ii번째 줄에는 공백으로 구분된 kk개의 정수 r[i][1],r[i][2],…,r[i][k]r[i][1], r[i][2], \dots, r[i][k]가 들어 있다.

그다음 nn개의 줄이 주어진다. 그중 ii번째 줄에는 공백으로 구분된 kk개의 정수 u[i][1],u[i][2],…,u[i][k]u[i][1], u[i][2], \dots, u[i][k]가 들어 있다.

출력

벤슨이 이수할 수 있는 모듈의 최대 개수를 정수 하나로 출력한다.

제한

1≤n,k≤1061 \le n, k \le 10^6

n⋅k≤106n \cdot k \le 10^6

모든 1≤i≤n1 \le i \le n과 1≤j≤k1 \le j \le k에 대해 0≤u[i][j],r[i][j]≤1090 \le u[i][j], r[i][j] \le 10^9이다.

예제3

  1. 예제 1

    입력
    3 3
    0 0 0
    7 9 2
    7 8 9
    7 8 2
    7 7 7
    8 10 9
    
    예상 출력
    1
    
  2. 예제 2

    입력
    4 3
    5 1 0
    0 1 5
    0 0 0
    7 7 7
    0 5 6
    1 1 1
    8 2 0
    8 1 4
    
    예상 출력
    4
    
  3. 예제 3

    입력
    5 5
    14 11 15 7 15
    0 0 0 0 0
    9 9 14 2 13
    4 3 6 1 0
    2 4 7 0 0
    5 5 0 0 13
    4 4 7 1 0
    4 1 0 2 1
    2 5 0 2 1
    4 0 7 2 12
    
    예상 출력
    4