2008 시도예선초등부문제 1. 다음은일정한규칙에따라수를늘어놓은것이다. 빈칸에가장알맞은수는? 2, 3, 5, 8, 12, 17, ( ) 2. A, B, C, D 가각각 0~9 까지숫자중에하나이고다른알파벳은다른숫자를나타낸 다. 다음식을만족하는 D 의값은? 3. 1 을 7

Similar documents
2010 초등부문제 1. 나, 아버지, 할아버지의나이관계가다음과같다. 나와아버지의나이차이는 30 이고, 아버지와할아버지의나이차이는 26이고, 나와할아버지의나이합은 90이다. 나는몇살인가? 2. 기약분수는분자와분모의최대공약수가 1 인분수이다. 분수 와분수 사이의 분수중에

Problem 정보영재교육센터경남김해단비컴퓨터학원 2010 시도예선초등부문제 1. 나, 아버지, 할아버지의나이관계가다음과같다. 나와아버지의나이차이는 30이고, 아버지와할아버지의나이차이는 26이고, 나와할아버지의나이합은 90이다. 나는몇살인가?


- 1 -

- 1 -

도형의닮음 1 강 - 닮은도형과닮음중심 사이버스쿨우프선생 닮음도형 : 일정한비율로확대또는축소하였을때닮음모양의도형 기호 : ABCD A'B'C'D' [ 예제 1 ] 그림에서와같이두닮은도형 ABCD 와 A'B'C'D' 에서대응점, 대

중간고사

Microsoft PowerPoint - ch10 - 이진트리, AVL 트리, 트리 응용 pm0600

; struct point p[10] = {{1, 2, {5, -3, {-3, 5, {-6, -2, {2, 2, {-3, -3, {-9, 2, {7, 8, {-6, 4, {8, -5; for (i = 0; i < 10; i++){ if (p[i].x > 0 && p[i

윈도우즈프로그래밍(1)

Microsoft PowerPoint - Java7.pptx

chap 5: Trees

기본도형과작도 1 강 - 연습문제 1. 오른쪽그림과같이직선l 위에점,, 가있을때, 옳지않은것은? 1 = 2 = 3 = 직선l 4 = 5 = l 2. 오른쪽그림에서 = = 이다. 다음( ) 안에알맞은수를쓰시오. 1 =( 2 =( 3 =( 4 =( ) ) ) ) 3. 한평

<322EBCF8C8AF28BFACBDC0B9AEC1A6292E687770>

PowerPoint 프레젠테이션

Microsoft PowerPoint - chap02-C프로그램시작하기.pptx

Chapter 4. LISTS

Infinity(∞) Strategy

JAVA 프로그래밍실습 실습 1) 실습목표 - 메소드개념이해하기 - 매개변수이해하기 - 새메소드만들기 - Math 클래스의기존메소드이용하기 ( ) 문제 - 직사각형모양의땅이있다. 이땅의둘레, 면적과대각

학습목표 함수프로시저, 서브프로시저의의미를안다. 매개변수전달방식을학습한다. 함수를이용한프로그래밍한다. 2

31. 을전개한식에서 의계수는? 를전개한식이 일 때, 의값은? 을전개했을때, 의계수와상수항의합을구하면? 을전개했을때, 의 계수는? 를전개했을때, 상수항을 구하여라. 37

0. 표지에이름과학번을적으시오. (6) 1. 변수 x, y 가 integer type 이라가정하고다음빈칸에 x 와 y 의계산결과값을적으시오. (5) x = (3 + 7) * 6; x = 60 x = (12 + 6) / 2 * 3; x = 27 x = 3 * (8 / 4

4. #include <stdio.h> #include <stdlib.h> int main() { functiona(); } void functiona() { printf("hihi\n"); } warning: conflicting types for functiona

Visual Basic 반복문

OCW_C언어 기초

RYWKVGWKJOFY.hwp

< E20C6DFBFFEBEEE20C0DBBCBAC0BB20C0A7C7D12043BEF0BEEE20492E707074>

비트와바이트 비트와바이트 비트 (Bit) : 2진수값하나 (0 또는 1) 를저장할수있는최소메모리공간 1비트 2비트 3비트... n비트 2^1 = 2개 2^2 = 4개 2^3 = 8개... 2^n 개 1 바이트는 8 비트 2 2

Microsoft PowerPoint - chap04-연산자.pptx


<C1DFB0EDB5EEBACE2E687770>

슬라이드 1

<30325FBCF6C7D05FB9AEC7D7C1F62E687770>

목차 포인터의개요 배열과포인터 포인터의구조 실무응용예제 C 2

완벽한개념정립 _ 행렬의참, 거짓 수학전문가 NAMU 선생 1. 행렬의참, 거짓개념정리 1. 교환법칙과관련한내용, 는항상성립하지만 는항상성립하지는않는다. < 참인명제 > (1),, (2) ( ) 인경우에는 가성립한다.,,, (3) 다음과같은관계식을만족하는두행렬 A,B에

PowerPoint 프레젠테이션

프로그래밍개론및실습 2015 년 2 학기프로그래밍개론및실습과목으로본내용은강의교재인생능출판사, 두근두근 C 언어수업, 천인국지음을발췌수정하였음

C프로-3장c03逞풚

[ 마이크로프로세서 1] 2 주차 3 차시. 포인터와구조체 2 주차 3 차시포인터와구조체 학습목표 1. C 언어에서가장어려운포인터와구조체를설명할수있다. 2. Call By Value 와 Call By Reference 를구분할수있다. 학습내용 1 : 함수 (Functi

고 학년도 9월고수학 1 전국연합학력평가영역문제지 1 1 제 2 교시 수학영역 5 지선다형 3. 두다항식, 에대하여 는? [ 점 ] 1. 의값은? ( 단, ) [ 점 ] 다항식 이 로인수분해될때, 의값은? ( 단,,

Microsoft Word - PLC제어응용-2차시.doc


Microsoft PowerPoint - ch07 - 포인터 pm0415

untitled

歯엑셀모델링

집합 집합 오른쪽 l 3. (1) 집합 X 의각원소에대응하는집합 Y 의원소가단하나만인대응을 라할때, 이대응 를 X 에서 Y 로의라고하고이것을기호로 X Y 와같이나타낸다. (2) 정의역과공역정의역 : X Y 에서집합 X, 공역 : X Y 에서집합 Y (3) 의개수 X Y

제 2 교시 2019 학년도 3 월고 1 전국연합학력평가문제지수학영역 1 5 지선다형 1. 의값은? [2점] 일차방정식 의해는? [2 점 ] 두수, 의최대공약수는? [2 점 ] 일차함수 의그래프에서

901-(Twin)¿ë AB

untitled

Microsoft PowerPoint - chap06-2pointer.ppt

1 peaieslvfp3 1. 두점사이의거리 수직선위의두점사이의거리를구할수있다. 좌표평면위의두점사이의거리를구할수있다. 수직선위의두점사이의거리 todrkrgo qhqtlek 오른쪽그림은충무로역을중심으로한서울시지하철 3`호선노선도의일부분이다. 충무로역을` 0, 을지로 3`

11장 포인터

컴파일러

8. 수직선위에다음수들이대응할때, 원점에서가장멀리 위치한수는? 12. Å + 7 ã Å + 5 ã Å 16 ã + 3 을계산하여라 다음에서그결과가다른하나는? 1 3 보다 5 만큼큰수 9. 두정수 a, b

최종 고등수학 하.hwp

일반각과호도법 l 삼각함수와미분 1. 일반각 시초선 OX 로부터원점 O 를중심으로 만큼회전이동한위치에동경 OP 가있을때, XOP 의크기를나타내는각들을 ( 은정수 ) 로나타내고 OP 의일반각이라한다. 2. 라디안 rad 반지름과같은길이의호에대한중심각의 크기를 라디안이라한

금오공대 컴퓨터공학전공 강의자료

쉽게 풀어쓴 C 프로그래밍

<4D F736F F F696E74202D20B8AEB4AABDBA20BFC0B7F920C3B3B8AEC7CFB1E22E BC8A3C8AF20B8F0B5E55D>

Microsoft PowerPoint - chap06-1Array.ppt

untitled


歯9장.PDF

Microsoft PowerPoint - gnu-w10-c-chap11

< 고급 C 프로그래밍및실습 > 11 장구조체실습문제 문제에대한안내 - 특별한언급이없으면문제의조건에맞지않는입력은입력되지않는다고가정하라. - 특별한언급이없으면, 각줄의맨앞과맨뒤에는공백을출력하지않는다. - 출력예시에서 는각줄의맨앞과맨뒤에출력되는공백을의미한다. - 입출력예시

Microsoft PowerPoint - chap11-포인터의활용.pptx

Microsoft PowerPoint - chap05-제어문.pptx

HWP Document

본 강의에 들어가기 전

2007_2_project4

03장.스택.key

학습목차 2.1 다차원배열이란 차원배열의주소와값의참조

11장 포인터

The C++ Programming Language 5 장포인터, 배열, 구조체 5.9 연습문제 다음의선언문을순서대로작성해보자. 문자에대한포인터, 10개정수의배열, 10개정수의배열의참조자, 문자열의배열에대한포인터, 문자에대한포인터에대한포인터, 상수정수, 상수

<443A5C4C C4B48555C B3E25C32C7D0B1E25CBCB3B0E8C7C1B7CEC1A7C6AE425CBED0C3E0C7C1B7CEB1D7B7A55C D616E2E637070>

Run 봄 연습 Mar 18 Mar 24, 2018, Week 3 문제 1. 초코바 입력 파일: 출력 파일: 시간 제한: 메모리 제한: standard input standard output 1 seconds 128 megabytes H W 격자 모양의 초콜릿이 있다.

<B1B9BEEE412E687770>

와플-4년-2호-본문-15.ps

TEST BANK & SOLUTION

- A 2 -

C 언어 프로그래밊 과제 풀이

<443A5C4C C4B48555C B3E25C32C7D0B1E25CBCB3B0E8C7C1B7CEC1A7C6AE425CC0E7B0EDB0FCB8AE5C53746F636B5F4D616E D656E74732E637070>

(Microsoft Word - \301\337\260\243\260\355\273\347.docx)

< D312D3220C0CCB5EEBAAFBBEFB0A2C7FC E485750>

RVC Robot Vaccum Cleaner

7) 다음의 다음 9) 남학생과 9. zb 여학생 각각 명이 갖고 있는 여름 티 셔츠의 개수를 조사하여 꺾은선그래프로 나타낸 것 이다. 이 두 그래프의 설명으로 옳지 않은 것은? ㄱ. ㄴ. 회째의 수학 점수는 점이다. 수학 점수의 분산은 이다. ㄷ. 영어점수가 수학 점

Microsoft PowerPoint - [2009] 02.pptx

untitled

풀이이문제는점의집합을확장하는규칙과시작점이주어졌을때, 목표로하는점을만들수있는지의여부를판단하는문제이다. 가능한모든점을직접만들어보는식으로는해결할수없으므로, 점을생성하는규칙에대해서수학적으로분석하는방식으로처리해야한다. 먼저시작점이 (a, a+x) 라고하면, 규칙 1을반복적용해서

Lab 4. 실습문제 (Circular singly linked list)_해답.hwp

1장. 유닉스 시스템 프로그래밍 개요

untitled

PowerPoint 프레젠테이션

PowerPoint Presentation

PowerPoint 프레젠테이션

원형연결리스트에대한설명중틀린것은 모든노드들이연결되어있다 마지막에삽입하기가간단한다 헤더노드를가질수있다 최종노드포인터가 NULL이다 리스트의 번째요소를가장빠르게찾을수있는구현방법은무엇인가 배열 단순연결리스트 원형연결리스트 이중연결리스트 단순연결리스트의노드포인터 가마지막노드를

Microsoft PowerPoint - ch09 - 연결형리스트, Stack, Queue와 응용 pm0100

Java

예제 1.1 ( 관계연산자 ) >> A=1:9, B=9-A A = B = >> tf = A>4 % 4 보다큰 A 의원소들을찾을경우 tf = >> tf = (A==B) % A

Lab 3. 실습문제 (Single linked list)_해답.hwp

Transcription:

2008 시도예선초등부문제 1. 다음은일정한규칙에따라수를늘어놓은것이다. 빈칸에가장알맞은수는? 2, 3, 5, 8, 12, 17, ( ) 2. A, B, C, D 가각각 0~9 까지숫자중에하나이고다른알파벳은다른숫자를나타낸 다. 다음식을만족하는 D 의값은? 3. 1 을 7 로나누었을때소수점이하 19 번째자리수는다음중어떤것인가? 5. 미국돈 40 달러는싱가포르돈 32 달러에해당하고, 싱가포르돈 80 달러는홍콩돈 100 달러에해당한다. 이때미국돈 111 달러는홍콩돈으로몇달러가되는가? 6. 암탉은한마리에 15원, 수탉은한마리에 9원, 병아리는한마리에 1원이다. 300원을모두사용하여정확히 100마리를사는데암탉을되도록많이사려고한다면암탉을몇마리사게될까?

7. A 나라에는 1 원, 5 원, 10 원, 12 원, 25 원의다섯가지동전이있다. 79 원을동전으로갖고 자할때, 가장적은개수의동전으로갖고자한다면몇개가될까? 8. A, B, C, D가달리기경주를하였다. 경주시작전에각각은경주결과에대하여다음과같이예측을하였다. A: B가 1등을할것이다. B: D가꼴찌를할것이다. C: A가 2등을할것이다. D: A의예측이맞을것이다. 실제로경기를한후위의예측들중에서하나만맞았고, 그예측은꼴찌를한선수의예측이었다. 경기에서 1등을한선수는누구일까? 9. 철수에게는세명의딸이있는데, 영희에게아이들의나이를맞추어보라고하면서딸들나이들의곱이 36이라고하였다. 영희가그것만으로는알수없다고하자, 세딸나이의합을알려주었다. 그런데영희는아직도정보가부족하다고하였다. 세딸나이의합으로알려준것은다음중어떤것인가? 10. 지성이의지난번국어, 영어, 산수시험의평균은 85점이었다. 이번시험에서국어성적은 5점, 영어성적은 7점이올랐으나수학성적은 3점이내렸다면, 지성이의이번시험평균은얼마인가? 11. 16 개의점이아래와같이놓여있다. 점선으로이은두점사이의거리가모두같다고 할때, 서로다른네점을이어만들수있는정사각형의개수는모두몇개인가?

12. 방송국에서 100명의학생에게질문을하여다음과같은결과를얻었다. 65명이국어강의를듣고있으며, 55명이산수강의를듣고있고, 25명이국어와산수강의를같이듣고있다. 100명중아무것도듣지않고있는학생수는전부몇명인가? 13. 아래그림은숫자삼각형을보여준다. 맨꼭대기에서바닥에까지한층에하나씩연결되는길을찾아내려가는데그합이최대가되는것을구하려는문제이다. 여기서한층씩내려간다는것은대각선방향으로왼쪽혹은대각선방향으로오른쪽으로내려가는것이다. 아래그림에서최대가되는합은얼마인가? 14. 다음그림에서화살표는일의순서를나타내는것이다. 예를들어다음그림에서 8번일을수행하려면 5번일과 6번일을먼저하여야한다는뜻이다. 다음보기의순서로일을수행하고자할때모든일을제대로끝낼수없는경우는어떤것인가?

1 1 2 3 4 5 6 7 8 9 2 1 2 4 3 5 6 7 8 9 3 1 4 2 3 5 6 7 8 9 4 1 2 5 3 4 6 8 7 9 5 1 2 3 4 5 7 6 8 9 15. 펜을떼지않고도형을그리는데한번지나간선을다시지나지않고그릴수있다면그도형은한붓그리기가가능하다고한다. 다음과같은도형을한붓그리기로그리려하는데시작점으로반드시돌아와서마쳐야한다면최소몇개의선분을추가해야하는가? <Visual C++ 사용자용문제 > 문제나프로그램내에명시되지않은변수와배열은모두 int 형이다. 16. 아래프로그램의실행결과는무엇인가? c = 0; for (i = 1; i <= 10; i++) c++; printf("%d\n", c);

17. 아래프로그램의실행결과는무엇인가? c = 1; for (i = 0; i <= 5; i++) c = c * i; 18. 아래프로그램의실행결과는무엇인가? c = 0; for (i = 7; i <= 62; i += 6) c++; printf("%d\n", c); 19. 다음은어떤프로그램의일부이다. 다음부분이실행된뒤 s 의값은? s = 1; for (i = 1; i <= 2008; i++) { if (s < 5) { s *= 2; else { s -= 5;

20. 다음은 1 에서 100 까지소수의개수를구하는프로그램이다. cnt = 0; for (i = 2; i <= 100; i++) { prime = 1; j = 2; while ( ᄀ ) { if (i % j == 0) prime = 0; j++; cnt += prime; printf("%d\n", cnt); 다음중ᄀ에들어갔을때올바른답이출력되지않는것은? [21-22] A 라는배열에아래와같이값이담겨있다. 이배열을아래프로그램으로처리하려고할때물음에답하라. for (i = 2; i <= 6; i++) { for (j = i; j >= 2; j--) { if (A[j] > A[j-1]) break; t = A[j]; A[j] = A[j-1]; A[j-1] = t;... ᄀ

21. ᄀ으로표시된줄은총몇번수행되는가? 22. 배열 A[1] 부터 A[6] 에다음과같이 6 개의수가들어있을때, ᄀ의줄이수행되는횟수 가가장적은것은? 1 6, 5, 4, 3, 2, 1 2 6, 1, 2, 3, 4, 5 3 2, 3, 1, 4, 5, 6 4 4, 2, 1, 3, 5, 6 5 1, 2, 6, 5, 4, 3 [23-25] 직사각형모양의색종이두장이책상위에놓여있다. 두색종이의크기는서로다를수있고, 각각의색종이의변들중적어도하나씩은책상모서리와평행하다. 책상의모서리를 x축으로놓고좌표평면을만들면색종이의왼쪽아래좌표와색종이의오른쪽위좌표로하나의색종이의위치를표현할수있다. y (x4, y4) (x2, y2) (x3, y3) (x1, y1) (0, 0) x 첫번째색종이의왼쪽아래좌표와오른쪽위좌표가각각 (x1, y1), (x2, y2) 로주어지고, 두번째색종이의왼쪽아래좌표와오른쪽위좌표가각각 (x3, y3), (x4, y4) 로주어진다. 이때두직사각형이겹치는지를판별하는프로그램을작성하려고한다. 모서리만닿거나꼭지점만닿는경우는겹치는경우가아닌것으로하자. int intersects(int x1, int y1, int x2, int y2, int x3, int y3, int x4, int y4) { if ( x4 ᄀ x1 x3 ᄂ x2 ) return 0; // 겹치지않는다. else if ( y4 ᄀ y1 y3 ᄂ y2 ) return 0; // 겹치지않는다. else return 1;

23. ᄀ에들어갈연산자는무엇인가? 24. ᄂ에들어갈연산자는무엇인가? 25. intersects(1, 1, 5, 5, 1, 2, 3, 4) + 2 * intersects(1, 1, 4, 4, 2, 2, 3, 3) 의결과값 은? 26. 아래프로그램의실행결과는무엇인가? int cnt; void test(int n) { if (n <= 1) cnt++; else { test(n / 2); test(n / 2); int main() { cnt = 0; test(100); printf("%d\n", cnt); return 0;

27. 아래프로그램이실행된뒤 lo, hi 의값은? N = 10; a[0] = 1, a[1] = 3, a[2] = 4, a[3] = 7, a[4] = 8; a[5] = 9, a[6] = 11, a[7] = 13, a[8] = 14, a[9] = 16; s = 4; lo = 0, hi = N - 1; while (lo <= hi) { m = (lo + hi) / 2; if (a[m] == s) break; else if (a[m] > s) hi = m - 1; else lo = m + 1; 28. 아래프로그램의실행결과는무엇인가? c = 0; for (i = 1; i <= 30; i++) { d = 0; for (j = 1; j <= i; j++) { if ( (i % j)!= 0) d++; if (i == d + 3) c++; printf("%d\n", c);

[29-30] 아래와같은함수 f 가있다. int f(int a, int b, int m) { int r; if (b == 0) return 1; r = f(a, b / 2, m); r = (r * r) % m; if (b % 2 == 1) r = (r * a) % m; return r; 29. f(2, 3, 9) 의결과값은무엇인가? 30. f(3, 15, 10) 의결과값은무엇인가? [31-32] 아래와같은문제를해결하기위해프로그램을작성하였다. 물음에답하여라. 문제 1부터연속적으로번호가붙어있는스위치들이있다. 스위치는켜져있거나꺼져있는상태이다. < 그림 1> 에스위치 8개의상태가표시되어있다. 1 은스위치가켜져있음을, 0 은꺼져있음을나타낸다. 그리고학생몇명을뽑아서, 학생들에게스위치개수이하인자연수를하나씩나누어주었다. 학생들은자기가받은수와같은번호가붙은스위치를중심으로좌우가대칭이면서가장많은스위치를포함하는구간을찾아서, 그구간에속한스위치의상태를모두바꾼다. 이때구간에속한스위치개수는항상홀수가된다. 예를들어 < 그림 1> 에서학생이 3을받았다면, 3번스위치를중심으로 2번, 4번스위치의상태가같고 1번, 5번스위치의상태가같으므로, < 그림 2> 과같이 1번부터 5번까지

스위치의상태를모두바꾼다. 만약 < 그림 1> 에서학생이 4 를받았다면, 3 번, 5 번스위치 의상태가서로다르므로 4 번스위치의상태만바꾼다. < 그림 1> < 그림 2> 입력으로스위치들의처음상태가주어지고, 각학생이받은수가주어진다. 학생들이입 력되는순서대로자기가받은수에따라스위치의상태를바꾸었을때, 스위치들의마지막 상태를출력하는프로그램을작성하시오. 입력형식 입력파일의이름은 INPUT.TXT이다. 첫째줄에는스위치개수가주어진다. 스위치개수는 100 이하인양의정수이다. 둘째줄에는각스위치의상태가주어진다. 켜져있으면 1, 꺼져있으면 0이라고표시하고사이에빈칸이하나씩있다. 셋째줄에는학생수가주어진다. 넷째줄부터마지막줄까지한줄에하나씩각학생이받은수가주어진다. 학생이받은수는스위치개수이하인양의정수이다. 출력형식 출력파일의이름은 OUTPUT.TXT이다. 스위치의상태를 1번스위치에서시작하여마지막스위치까지한줄에 20개씩출력한다. 예를들어 21번스위치가있다면이스위치의상태는둘째줄맨앞에출력한다. 켜진스위치는 1, 꺼진스위치는 0으로표시하고, 스위치상태사이에빈칸을둔다. 입력과출력의예 입력 (INPUT.TXT) 8 0 1 1 1 0 1 0 1 1 3

출력 (OUTPUT.TXT) 1 0 0 0 1 1 0 1 프로그램 #include <stdio.h> int n, m; bool s[101]; void operation(int x) { int i, temp; if ( < ) temp = ; else temp = ; for (i = 1; i <= temp; i++) { if (s[x + i]!= s[x - i]) break; s[x] =!s[x]; int main() { int i, a; FILE * fin = fopen("input.txt", "r"); FILE * fout = fopen("output.txt", "w"); fscanf(fin, "%d", &n);

for (i = 1; i <= n; i++) { fscanf(fin, "%d", &a); if (a == 1) s[i] = true; else s[i] = false; fscanf(fin, "%d", &m); for (i = 1; i <= m; i++) { fscanf(fin, "%d", &a); operation(a); for (i = 1; i <= n; i++) { if (s[i]) fprintf(fout, "1 "); else fprintf(fout, "0 "); if (i % 20 == 0 && i!= n) fprintf(fout, "\n"); fprintf(fout, "\n"); fclose(fin); fclose(fout); return 0; 31. ᄀ, ᄂ에들어갈내용은각각무엇인가?

32. 다음중ᄃ에들어갈수없는내용은무엇인가? 1 s[x + i] =!s[x + i]; 2 s[x + i] =!s[x - i]; s[x - i] =!s[x - i]; s[x - i] = s[x + i]; 3 s[x + i] =!s[x + i]; 4 s[x + i] =!s[x - i]; s[x - i] = s[x + i]; s[x - i] =!s[x - i]; 5 s[x + i] =!s[x - i]; s[x - i] =!s[x + i]; [33-35] 아래와같은문제를해결하기위해프로그램을작성하였다. 물음에답하여라. 문제 정보초등학교학생회장후보는일정기간동안전체학생의추천에의하여정해진수만큼선정된다. 그래서학교홈페이지에추천받은학생의사진을게시할수있는사진틀을후보의수만큼만들었다. 추천받은학생의사진을사진틀에게시하고추천받은횟수를표시하는규칙은다음과같다. ( 규칙 1) 학생들이추천을시작하기전에모든사진틀은비어있다. ( 규칙 2) 어떤학생이특정학생을추천하면, 추천받은학생의사진이반드시사진틀에게시되어야한다. ( 규칙 3) 비어있는사진틀이없는경우에는현재까지추천받은횟수가가장적은학생의사진을삭제하고, 그자리에새롭게추천받은학생의사진을게시한다. 이때, 현재까지추천받은횟수가가장적은학생이두명이상일경우에는게시된지가장오래된사진을삭제한다. ( 규칙 4) 현재사진이게시된학생이다른학생의추천을받은경우에는추천받은횟수만증가시킨다. ( 규칙 5) 사진틀에게시된사진이삭제되는경우에는해당학생이추천받은횟수는 0으로바뀐다. 후보의수즉, 사진틀의개수와전체학생의추천결과가추천받은순서대로주어졌을때, 최종후보가누구인지결정하는프로그램을작성하시오. 입력형식 입력파일의이름은 INPUT.TXT 이다. 첫째줄에는사진틀의개수를나타내는자연수가 주어진다. 둘째줄에는전체학생의총추천횟수가주어지고, 셋째줄에는추천받은학생

을나타내는번호가빈칸하나를사이에두고추천받은순서대로주어진다. 단, 사진틀의 개수는 20 개이하이고, 총추천횟수는 1000 번이하이다. 학생을나타내는번호는 1 부터 100 까지의자연수이다. 출력형식 출력파일의이름은 OUTPUT.TXT 이다. 사진틀에사진이게재된최종후보의학생번호 를빈칸을사이에두고출력한다. 단, 출력순서는상관없다. 입력과출력의예 입력 (INPUT.TXT) 3 9 2 1 4 3 5 6 2 7 2 출력 (OUTPUT.TXT) 2 7 6 프로그램 #include <stdio.h> int main() { int student[20], vote[20], time[20]; int n, m, k; int s; int i, j, t; bool exist; FILE * fin = fopen("input.txt", "r"); FILE * fout = fopen("output.txt", "w"); fscanf(fin, "%d", &n); fscanf(fin, "%d", &k);

m = 0; for (i = 0; i < k; i++) { fscanf(fin, "%d", &s); exist = false; for (j = 0; j < m; j++) { if (student[j] == s) { vote[j]++; exist = true; break; if (!exist) { if ( ) { j = m; else { j = 0; for (t = 1; t < m; t++) { if (vote[t] < vote[j] (vote[t] == vote[j] && time[t] < time[j])) j = t; student[j] = s; vote[j] = 1; ; for (i = 0; i < m; i++) {

if (i < m - 1) fprintf(fout, "%d ", student[i]); else fprintf(fout, "%d\n", student[i]); fclose(fin); fclose(fout); return 0; 33. ᄀ에들어갈내용은무엇인가? 34. ᄂ에들어갈내용은무엇인가? 35. 위프로그램에서 m++; 이들어가야할곳은? <Visual Basic 사용자용문제 > 문제나프로그램내에명시되지않은변수와배열은모두 Integer 형이다. 16. 아래프로그램의실행결과는무엇인가? c = 0 For i = 1 To 10 c = c + 1 Next i Debug.Print c

17. 아래프로그램의실행결과는무엇인가? c = 1 For i = 0 To 5 c = c * i Next i Debug.Print c 18. 아래프로그램의실행결과는무엇인가? c = 0 For i = 7 To 62 Step 6 c = c + 1 Next i Debug.Print c 19. 다음은어떤프로그램의일부이다. 다음부분이실행된뒤 s 의값은? s = 1 For i = 1 To 2008 If s < 5 Then s = s * 2 Else s = s - 5 End If Next i

20. 다음은 1 에서 100 까지소수의개수를구하는프로그램이다. cnt = 0 For i = 2 To 100 prime = 1 j = 2 While ᄀ If (i Mod j) = 0 Then prime = 0 j = j + 1 Wend cnt = cnt + prime Next i Debug.Print cnt 다음중ᄀ에들어갔을때올바른답이출력되지않는것은? [21-22] A 라는배열에아래와같이값이담겨있다. 이배열을아래프로그램으로처리하려고할때물음에답하라. For i = 2 To 6 For j = i To 2 Step -1 If A(j) > A(j - 1) Then Exit For t = A(j): A(j) = A(j - 1): A(j - 1) = t Next j Next i... ᄀ 21. ᄀ으로표시된줄은총몇번수행되는가?

22. 배열 A[1] 부터 A[6] 에다음과같이 6 개의수가들어있을때, ᄀ의줄이수행되는횟수 가가장적은것은? 1 6, 5, 4, 3, 2, 1 2 6, 1, 2, 3, 4, 5 3 2, 3, 1, 4, 5, 6 4 4, 2, 1, 3, 5, 6 5 1, 2, 6, 5, 4, 3 [23-25] 직사각형모양의색종이두장이책상위에놓여있다. 두색종이의크기는서로다를수있고, 각각의색종이의변들중적어도하나씩은책상모서리와평행하다. 책상의모서리를 x축으로놓고좌표평면을만들면색종이의왼쪽아래좌표와색종이의오른쪽위좌표로하나의색종이의위치를표현할수있다. y (x4, y4) (x2, y2) (x3, y3) (x1, y1) (0, 0) x 첫번째색종이의왼쪽아래좌표와오른쪽위좌표가각각 (x1, y1), (x2, y2) 로주어지고, 두번째색종이의왼쪽아래좌표와오른쪽위좌표가각각 (x3, y3), (x4, y4) 로주어진다. 이때두직사각형이겹치는지를판별하는프로그램을작성하려고한다. 모서리만닿거나꼭지점만닿는경우는겹치는경우가아닌것으로하자. Function intersects(x1, y1, x2, y2, x3, y3, x4, y4) As Integer If x4 ᄀ x1 Or x3 ᄂ x2 Then intersects = 0 ' 겹치지않는다. ElseIf y4 ᄀ y1 Or y3 ᄂ y2 Then intersects = 0 ' 겹치지않는다. Else intersects = 1 End If End Function 23. ᄀ에들어갈연산자는무엇인가?

24. ᄂ에들어갈연산자는무엇인가? 25. intersects(1, 1, 5, 5, 1, 2, 3, 4) + 2 * intersects(1, 1, 4, 4, 2, 2, 3, 3) 의결과값 은? 26. 아래프로그램의실행결과는무엇인가? Dim cnt As Integer Sub test(n) If n <= 1 Then cnt = cnt + 1 Else Call test(int(n / 2)) Call test(int(n / 2)) End If End Sub Sub main() cnt = 0 Call test(100) Debug.Print cnt End Sub 27. 아래프로그램이실행된뒤 lo, hi 의값은? N = 10 a(0) = 1: a(1) = 3: a(2) = 4: a(3) = 7: a(4) = 8 a(5) = 9: a(6) = 11: a(7) = 13: a(8) = 14: a(9) = 16 s = 4 lo = 0: hi = N - 1 Do While lo <= hi m = Int((lo + hi) / 2)

If a(m) = s Then Exit Do ElseIf a(m) > s Then hi = m - 1 Else lo = m + 1 End If Loop 28. 아래프로그램의실행결과는무엇인가? c = 0 For i = 1 To 30 d = 0 For j = 1 To i If (i Mod j) <> 0 Then d = d + 1 Next j If i = d + 3 Then c = c + 1 Next i Debug.Print c [29-30] 아래와같은함수 f 가있다. Function f(a, b, m) As Integer If b = 0 Then f = 1 Else r = f(a, int(b / 2), m) r = (r * r) Mod m If b Mod 2 = 1 Then r = (r * a) Mod m f = r End If End Function

29. f(2, 3, 9) 의결과값은무엇인가? 30. f(3, 15, 10) 의결과값은무엇인가? [31-32] 아래와같은문제를해결하기위해프로그램을작성하였다. 물음에답하여라. 문제 1부터연속적으로번호가붙어있는스위치들이있다. 스위치는켜져있거나꺼져있는상태이다. < 그림 1> 에스위치 8개의상태가표시되어있다. 1 은스위치가켜져있음을, 0 은꺼져있음을나타낸다. 그리고학생몇명을뽑아서, 학생들에게스위치개수이하인자연수를하나씩나누어주었다. 학생들은자기가받은수와같은번호가붙은스위치를중심으로좌우가대칭이면서가장많은스위치를포함하는구간을찾아서, 그구간에속한스위치의상태를모두바꾼다. 이때구간에속한스위치개수는항상홀수가된다. 예를들어 < 그림 1> 에서학생이 3을받았다면, 3번스위치를중심으로 2번, 4번스위치의상태가같고 1번, 5번스위치의상태가같으므로, < 그림 2> 과같이 1번부터 5번까지스위치의상태를모두바꾼다. 만약 < 그림 1> 에서학생이 4를받았다면, 3번, 5번스위치의상태가서로다르므로 4번스위치의상태만바꾼다. < 그림 1> < 그림 2>

입력으로스위치들의처음상태가주어지고, 각학생이받은수가주어진다. 학생들이입 력되는순서대로자기가받은수에따라스위치의상태를바꾸었을때, 스위치들의마지막 상태를출력하는프로그램을작성하시오. 입력형식 입력파일의이름은 INPUT.TXT이다. 첫째줄에는스위치개수가주어진다. 스위치개수는 100 이하인양의정수이다. 둘째줄에는각스위치의상태가주어진다. 켜져있으면 1, 꺼져있으면 0이라고표시하고사이에빈칸이하나씩있다. 셋째줄에는학생수가주어진다. 넷째줄부터마지막줄까지한줄에하나씩각학생이받은수가주어진다. 학생이받은수는스위치개수이하인양의정수이다. 출력형식 출력파일의이름은 OUTPUT.TXT이다. 스위치의상태를 1번스위치에서시작하여마지막스위치까지한줄에 20개씩출력한다. 예를들어 21번스위치가있다면이스위치의상태는둘째줄맨앞에출력한다. 켜진스위치는 1, 꺼진스위치는 0으로표시하고, 스위치상태사이에빈칸을둔다. 입력과출력의예 입력 (INPUT.TXT) 8 0 1 1 1 0 1 0 1 1 3 출력 (OUTPUT.TXT) 1 0 0 0 1 1 0 1 프로그램 Dim n, m As Integer Dim s(100) As Boolean Sub operation(x)

Dim i, temp As Integer If < Then temp = Else temp = End If For i = 1 To temp If s(x + i) <> s(x - i) Then Exit For Next i End Sub s(x) = Not s(x) Sub main() Dim i, a As Integer Open "INPUT.TXT" For Input As #1 Open "OUTPUT.TXT" For Output As #2 Input #1, n For i = 1 To n Input #1, a If a = 1 Then s(i) = True Else s(i) = False End If Next i Input #1, m For i = 1 To m Input #1, a Call operation(a) Next i For i = 1 To n

If s(i) Then Print #2, 1; Else Print #2, 0; End If If i Mod 20 = 0 And i <> n Then Print #2, End If Next i Print #2, Close #1 Close #2 End Sub 31. ᄀ, ᄂ에들어갈내용은각각무엇인가? 32. 다음중ᄃ에들어갈수없는내용은무엇인가? 1 s(x + i) = Not s(x + i) 2 s(x + i) = Not s(x - i) s(x - i) = Not s(x - i) s(x - i) = s(x + i) 3 s(x + i) = Not s(x + i) 4 s(x + i) = Not s(x - i) s(x - i) = s(x + i) s(x - i) = Not s(x - i) 5 s(x + i) = Not s(x - i) s(x - i) = Not s(x + i)

[33-35] 아래와같은문제를해결하기위해프로그램을작성하였다. 물음에답하여라. 문제 정보초등학교학생회장후보는일정기간동안전체학생의추천에의하여정해진수만큼선정된다. 그래서학교홈페이지에추천받은학생의사진을게시할수있는사진틀을후보의수만큼만들었다. 추천받은학생의사진을사진틀에게시하고추천받은횟수를표시하는규칙은다음과같다. ( 규칙 1) 학생들이추천을시작하기전에모든사진틀은비어있다. ( 규칙 2) 어떤학생이특정학생을추천하면, 추천받은학생의사진이반드시사진틀에게시되어야한다. ( 규칙 3) 비어있는사진틀이없는경우에는현재까지추천받은횟수가가장적은학생의사진을삭제하고, 그자리에새롭게추천받은학생의사진을게시한다. 이때, 현재까지추천받은횟수가가장적은학생이두명이상일경우에는게시된지가장오래된사진을삭제한다. ( 규칙 4) 현재사진이게시된학생이다른학생의추천을받은경우에는추천받은횟수만증가시킨다. ( 규칙 5) 사진틀에게시된사진이삭제되는경우에는해당학생이추천받은횟수는 0으로바뀐다. 후보의수즉, 사진틀의개수와전체학생의추천결과가추천받은순서대로주어졌을때, 최종후보가누구인지결정하는프로그램을작성하시오. 입력형식 입력파일의이름은 INPUT.TXT이다. 첫째줄에는사진틀의개수를나타내는자연수가주어진다. 둘째줄에는전체학생의총추천횟수가주어지고, 셋째줄에는추천받은학생을나타내는번호가빈칸하나를사이에두고추천받은순서대로주어진다. 단, 사진틀의개수는 20개이하이고, 총추천횟수는 1000번이하이다. 학생을나타내는번호는 1부터 100까지의자연수이다. 출력형식 출력파일의이름은 OUTPUT.TXT 이다. 사진틀에사진이게재된최종후보의학생번호 를빈칸을사이에두고출력한다. 단, 출력순서는상관없다.

입력과출력의예 입력 (INPUT.TXT) 3 9 2 1 4 3 5 6 2 7 2 출력 (OUTPUT.TXT) 2 7 6 프로그램 Sub main() Dim student(20), vote(20), time(20) As Integer Dim n, m, k As Integer Dim s As Integer Dim i, j, t As Integer Dim exist As Boolean Open "INPUT.TXT" For Input As #1 Open "OUTPUT.TXT" For Output As #2 Input #1, n Input #1, k m = 0 For i = 1 To k Input #1, s exist = False For j = 1 To m If student(j) = s Then vote(j) = vote(j) + 1 exist = True Exit For End If

Next j If Not exist Then If Then j = m + 1 Else j = 1 For t = 2 To m If vote(t) < vote(j) Or (vote(t) = vote(j) And time(t) < time(j)) Then j = t End If Next t End If student(j) = s vote(j) = 1 End If Next i For i = 1 To m If i < m Then Print #2, student(i); Else Print #2, student(i) End If Next i Close #1 Close #2 End Sub

33. ᄀ에들어갈내용은무엇인가? 34. ᄂ에들어갈내용은무엇인가? 35. 위프로그램에서 m = m + 1 이들어가야할곳은?

2008 시도예선초등부정답 35.