제13회 한국정보올피아드 초등부 기출문제
그림1과 같이 정사각형 모양의 지도가 있다. 1은 집이 있는 곳을, 0은 집이 없는 곳을 나타낸다. 철 수는 이 지도를 가지고 연결된 집들의 모임인 단지를 정의하고, 단지에 번호를 붙이려 한다. 여기서 연결되었다는 것은 어떤 집이 좌우, 혹은 아래위로 다른 집이 있는 경우를 말한다 . 대각선상에 집이 있는 경우는 연결된 것이 아니다 . 그림2는 그림1을 단지별로 번호를 붙인 것이다 . 지도를 입력하여 단지수를 출력하고, 각 단지에 속하는 집의 수를 오름차순으로 정렬하여 출력하는 프로그램을 작성 하시오.
실행파일의 이름은 MAP.EXE로 하시오 0 1 1 0 1 0 0 0 1 1 0 1 0 1 1 1 1 0 1 0 1 0 0 0 0 1 1 1 0 1 0 0 0 0 0 0 1 1 1 1 1 0 0 1 1 1 0 0 0
0 1 1 0 2 0 0 0 1 1 0 2 0 2 1 1 1 0 2 0 0 0 0 0 0 2 2 2 0 3 0 0 0 0 0 0 3 3 3 3 3 0 0 3 3 3 0 0 0 <그림 1> <그림 2>
첫 번째줄에는 지도의 크기 N(정사각형이므로 가로와 세로의 크기는 같으며 5≤N≤25)이 입력 되고 그 다음 N줄에는 각각 N개의 자료 (0 혹은 1) 가 입력된다.
첫 번째줄에는 총 단지수를 출력하시오. 그리고 각 단지내이 집의 수를 오름차순으로 정렬하여 한줄에 하나씩 출력하시오.
( 입 력 )
( 출 력 ) 7 0110100 0110101 1110101 0000111 0100000 0111110 0111000
3 7 8 9
숫자 고르기
두줄과 N개의 칸으로 이루어진 표에 , 첫째줄의 각 칸에는 정수 1, 2, ..., N이 차례대로 들어 있다.
둘째줄의 각 칸에는 1이상이고 N이하인 정수가 들어있다. 첫째줄에서 숫자를 적절히 뽑으면 , 그 뽑힌 정수들이 이루는 집합과, 뽑힌 정수들의 바로 밑의 둘째 줄에 들어있는 정수들이 이루는 집합이 일치 한다. 이러한 조건을 만족시키도록 정수들을 뽑되, 최대로 많이 뽑는 방법을 프로그램 하시오.
예를 들어서 N=7인 경우에 아래의 표를 보시오
이 경우에 첫째 줄에서 1, 3, 5를 뽑는 것이 답이다.(만약, 첫째줄에서 1과 3만 뽑으면, 뽑힌 중수 1과 1 2 3 4 5 6 7
3 1 1 5 5 4 6
페이지 1 / 3 Untitled
01-08-13
file://E:\올림피아드\piad\TMP32r3uhzy3m.htm
3이 이루는 집합과 이들 바로 밑에 있는 정수 3과 1이 이루는 집합이 일치한다. 그러나 이 경우에 뽑 힌 정수의 개수는 최대가 아니므로 답이 될 수 없다.)
실행파링의 이름은 NUM.EXE로 하시오.
입력의 첫째줄은 N의 값이다.(1≤N≤100) 그 다음줄부터는 표의 둘째 줄에 들어가는 정수들이 순서대로 한 줄에 하나씩 입력된다.
출력의 첫째 줄에는 뽑힌 정수들의 개수를 출력하고, 그 다음 줄부터는 뽑힌 정수들을 작은 수부 터 큰 수의 순서로 한줄에 하나씩 출력한다.
( 입 력 )
( 출 력 ) 7 3 1 1 5 5 4 6
3 1 3
5
네 개의 직사각형이 평면에 있는데, 밑변이 모두 가로축에 평행하다. 이 직사각형들이 차지하는 면적 을 구하는 프로그램을 작성하시오 . 이 네 개의 직사각형들은 서로 떨어져 있을 수도 있고, 겹쳐 있을 수도 있고 , 하나가 다른 하나를 포함 할 수도 있으며, 변이나 꼭지점이 겹쳐질 수도 있다.
실행파일의 이름은 RECT.EXE호 하시오.
하나의 직사각형은 왼쪽 아래의 꼭지점과 오른쪽 위의 꼭지점의 좌표로 주어진다. 입력은 네줄 이며, 각 줄은 네 개의 정수로 하나의 직사각형을 나타낸다. 첫 번빼와 두 번째의 정수는 사각형 의 왼쪽 아래 꼭지점의 x좌표, y좌표이고, 세 번째와 네 번째의 정수는 사각형의 오른쪽 위 꼭지 점의 x좌표, y좌표이다. 단, x좌표와 y좌표는 1이상이고 1000 이하인 정수이다.
화면에 네 개의 직사각형이 차지하는 면적을 출력한다.
페이지 2 / 3 Untitled
01-08-13
file://E:\올림피아드\piad\TMP32r3uhzy3m.htm
이 경우의 입출력은 다음과 같다.
( 입 력 )
( 출 력 )
1 2 4 4 2 3 5 7 3 1 6 5 7 3 8 6
26