만드는 중입니다

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

챔피언십

면접 대비

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

요약
각 몬스터가 상대 팀에서 아는 몬스터 수가 주어질 때, 모든 수를 만족하는 이분 그래프를 만들거나 불가능하면 NO를 출력합니다.
난이도

보통10점 중 5점

유형
그리디, 그래프
정답자
아직 제출이 없습니다

문제

드라큘라 백작은 부하 몬스터들 사이에서 공포 대회를 열기로 했다.

그는 모든 몬스터를 두 팀으로 나누었다. 첫 번째 팀에는 nn마리, 두 번째 팀에는 mm마리의 몬스터가 있다. 부정 행위를 막기 위해 드라큘라는 각 몬스터가 상대 팀의 어떤 몬스터와 아는 사이인지 조사해 종이에 적어 두었다. 이 정보는 대회 중 참가자를 감시하는 데 쓰려던 것이었지만, 안타깝게도 그는 그 종이를 잃어버렸다. 그가 기억하는 것은 각 몬스터가 상대 팀에 아는 몬스터가 몇 명인지뿐이다.

백작이 화가 나 있으니, 누가 누구와 아는 사이인지 빨리 알아내야 한다.

입력

첫 줄에는 공백으로 구분된 정수 nn과 mm(1≤n,m≤1001 \le n, m \le 100)이 주어진다.

둘째 줄에는 공백으로 구분된 nn개의 정수 aia_i(0≤ai≤1000 \le a_i \le 100)가 주어진다. aia_i는 첫 번째 팀의 ii번째 몬스터가 두 번째 팀에서 아는 몬스터의 수이다.

셋째 줄에는 공백으로 구분된 mm개의 정수 bib_i(0≤bi≤1000 \le b_i \le 100)가 주어진다. bib_i는 두 번째 팀의 ii번째 몬스터가 첫 번째 팀에서 아는 몬스터의 수이다.

출력

해가 존재하면 YES를, 존재하지 않으면 NO를 출력한다.

해가 존재하면 둘째 줄에 아는 사이인 쌍의 개수를 출력한다. 이후 한 줄에 한 쌍씩, 첫 번째 팀의 몬스터 번호를 먼저, 두 번째 팀의 몬스터 번호를 나중에 출력한다. 쌍의 순서는 상관없다.

예제2

  1. 예제 1

    입력
    3 3
    1 0 2
    1 1 1
    
    예상 출력
    YES
    3
    1 1
    3 2
    3 3
    
  2. 예제 2

    입력
    3 3
    3 3 3
    3 3 3
    
    예상 출력
    YES
    9
    1 1
    1 2
    1 3
    2 1
    2 2
    2 3
    3 1
    3 2
    3 3