2014년 4월 12일 토요일

효주가 만든 시험

공지사항

  1. 시험 시간에 착오가 있어 종료 시각을 연장합니다.
    출제자 분께서 정확한 시각은 말씀해 주지 않으셨고,
    22시보다 늦게 보내도 어느 정도까진 답안을 받습니다.
  2. 본 문제는 놀먹의 허효주님께서 이공계의 넘침을 막기 위해 출제하셨으며,
    이 블로그 특성에 맞게 편집되었습니다.
    편집 전의 문항을 보려면 여기로 가시면 됩니다.

안녕하세요 출제자 허효주입니다 ㅋㅋㅋㅋ         
본 시험은 문학 시험과 비문학 시험으로 나뉩니다.
문학 시험은 여러분의 사고의 확장과 깊이, 그리고 인생관을 보려는 목적이고
비문학 시험은 논리력을 중점적으로 보려는 목적입니다.
다시 말해서 문학에는 정답이 없어요
외형률이 어떻고 그딴 거 상관 없고, 일부러 길게 쓰려 하지 않아도 됩니다.
놀먹에서는 긍정적인 사람과 부정적인 사람 모두를 환영하니,
느낀 그대로 써 주시면 되고,
비문학에는 창의적 사고력이 그다지 필요하지 않으니까, 이 점 잘 알아두시고
시험시간 배분하는 데 착오 없으시길 바랍니다 ㅎㅎ

질문사항 : 까똑 hyojuheo
답안제출 : hyojuheo@gmail.com (22시까지)
(이메일 제목은 응시자의 닉네임이나 실명으로 해주세요^-^)

문학

다음 시의 해석을 서술하세요 (작자 생략)
<>
달토끼가 방아만 찧는다면
그저 팔이 아프고 숨이 차겠죠
달토끼가 지상으로 내려오면
그땐 그저 낯설고 설레겠죠
달토끼가 혼자 제 살 집을 지으면
산토끼는 어슬렁거리다 그냥 가겠죠
달토끼가 집을 다 지을 무렵
그때서야 조용히 달을 바라보겠죠
달토끼가 새로운 친구를 찾으려 하면
달토끼는 비로소 해를 만나겠죠
달토끼가 해를 만났을때
해는 그저 세상을 밝히다 사라지겠죠

그리고 다시 밤이 되었을때

달토끼는
영롱하게 빛나는 달 대신
달에 남아있는 자신의 그림자를 보며
천천히 고개를 숙입니다

비문학

사형 제도가 정당하다고 생각하는지 그 이유와 함께 서술하세요
(최소 네 문단 ~ 최대 여섯 문단최소 1,000자 ~ 최대 1,200자 – 띄어쓰기 미포함)

(글자수 세 주는 사이트 많이 있습니다. 직접 세지 말고 사이트 이용하세요^^)

2014년 4월 5일 토요일

제 2회 수학 능력 시험 답

이번 회 답안에서는 문제 분석과
각 문제에서 가장 높은 배점을 받은 응시자의 풀이
(만약 없다면 모범 풀이)를 올리도록 하겠습니다.

1. 답 5점, 답이 틀리면 점수 없음.
단순히 문제 이해만 하고 열심히 계산해주면 됩니다.
제가 생각했던 모범 풀이보다 좋은 풀이가 있어 올립니다.
mk34252@naver.com의 풀이입니다.

0+0=0

0+1=1
1+1=2

0+4=4
1+4=5
4+4=8

0+9=9
1+9=10
4+9=13
9+9=18

0+16=16
1+16=17
4+16=20
9+16=25
16+16=32

0+25=25
1+25=26
4+25=29
...

이를 순서대로 늘어놓으면 0-1-2-4-5-8-9-10-13-16-17-18-20-25-26
(5/5)

2. 맞는 풀이 10점, 논리적 오류 5점 감점.
단순한 인수분해 발상을 할 수 있느냐를 묻는 문제입니다.
kawaii.fourier@gmail.com의 풀이입니다.

\(x=a^2+b^2\)(\(a\), \(b\)는 정수)로 표시하면 \(2x = 2a^2 + 2b^2 = (a+b)^2 + (a-b)^2 \in S\)이다.
(10/10)

3. 맞는 풀이 25점, 논리적 오류 5점 감점.
귀류법을 이용할 수 있는가를 묻는 문제입니다.
모범 풀이입니다.

어떤 \(x \in S\)이 \(4k+3\)(\(k\)는 정수)꼴로 쓸 수 있다고 가정하고 모순을 이끈다.
우선 제곱수를 4로 나누었을 때 나머지를 알아보자. 정수 \(a\)에 대해 \(a^2\)은
i) \(a = 4m \Rightarrow a^{2}=16m^{2} = 4 \cdot 4m^{2}\)
ii) \(a = 4m + 1 \Rightarrow a^{2}=16m^{2}+8m+1 = 4(4m^{2}+2m)+1\)
iii) \(a = 4m + 2 = 2(m + 1) \Rightarrow a^{2} = 4(m+1)^{2}\)
iv) \(a = 4m + 3 \Rightarrow a^{2} = 16m^{2} + 24m + 9 = 4(4m^{2} + 6m + 2) + 1\)
(단, \(m\)은 정수)
따라서 제곱수는 항상 4로 나눈 나머지가 0 또는 1이다.
그렇다면 제곱수 두 개를 더해서 4로 나눈 나머지가 3,
다시 말해 \(4k + 3\) 꼴을 만드는 것은 불가능하다.
따라서 모순이 유도되고, 준 명제는 성립한다.

Note) 대우 자체의 내용은 중등 2년 과정이나, 어떤 명제가 참이면 대우도 참이라는 내용은 개정 전 고등 1년에 진리집합을 배우면서 증명됩니다. 따라서, 이 성질을 이용하신 분은 부득이하게 감점(15점) 처리했습니다.

4 (1). 맞는 풀이 15점, 논리적 오류 5점 감점.
2번 문제의 역의 강한 형태입니다. 홀짝성의 성질을 알고 있느냐를 묻는 문제입니다.
kawaii.fourier@gmail.com의 풀이입니다.

\(2x = a^{2} + b^{2}\)가 짝수이므로 \(a\), \(b\)가 모두 짝수이거나, 모두 홀수이다.
따라서 그 합과 차는 항상 짝수이다.
그러므로, \(x = \frac{a^{2}+b^{2}}{2}=\left(\frac{a+b}{2}\right)^{2} + \left(\frac{a-b}{2}\right)^{2} \in S\)이다.


4 (2). 풀이 35점, 논리적 오류 5점 감점.
복잡한 수준의 인수분해를 원하는 꼴로 할 수 있는가를 묻는 문제입니다.
모범 풀이입니다.

\(x=a^{2} + b^{2}\), \(y=c^{2}+d^{2}\) (\(a\), \(b\), \(c\), \(d\)는 정수)라고 하면,
\(xy = (a^{2} + b^{2})(c^{2} + d^{2}) = (ac)^2 + (bd)^2 + (ad)^2 + (bc)^2\)
\(= (ac)^2 + 2(ac)(bd) + (bd)^2 + (ad)^2 - 2(ad)(bc) + (bc)^2\)
\(= (ac + bd)^2 + (ad - bc)^2 \in S\)이다.


준비중입니다.

2014년 3월 23일 일요일

제 2회 수학 능력 시험 문제

모바일에서 TeX이 깨져서
오류 수정했습니다.
그래서 30분 연장합니다.
22시까지 답안을 받겠습니다.
현재 한 명도 보내지 않았습니다.

유의사항

  1. 답안은 반드시 k2pa00@gmail.com으로 보내주시기 바랍니다.
  2. 여기에서 말했듯이, 성적 상위 4명은 놀먹에 들어오실 수 있는 자격이 주어집니다.
    하지만 놀먹에 들어오지 않으셔도 상관이 없기 때문에
    답안에 "놀먹에 들어가겠다/들어가지 않겠다"를 명확히 해 주세요.
  3. '선택 문항'에 해당되는 문제는 푼 문제들 중 가장 높은 득점을 맞은 문제만
    그 문제들의 전체 득점으로 처리됩니다. 예를 들어 선택 문항인 1번~4번에서
    그 중 가장 높은 득점을 가진 4번만 정확히 풀어도 만점을 받을 수 있습니다.
  4. 정확한 채점 기준은 모든 답안지 회수 후 21시 30분 이후에 공개될 예정입니다.
  5. 모든 문제는 중학교 과정 안에서 풀어야 합니다.
    그렇지 않을 경우 답에 해당하는 점수만 받으실 수 있습니다.
  6. 모든 문제에서 정확한 풀이과정을 적어 주세요. 적지 않을 경우 감점이 있습니다.
  7. 문제 이상이 있으시면 언제든 제 메일로
    해당 문제의 번호와 그렇게 생각한 이유를 보내 주세요.

배점

05점 | 1문제 | 01번
10점 | 3문제 | 02번 07번 09번
15점 | 2문제 | 03번
20점 | 1문제 | 10번
30점 | 1문제 | 05번 08번
40점 | 2문제 | 06번 11번
50점 | 1문제 | 04번
70점 | 1문제 | 12번
총 12문제, 예상 최대 득점 200점.
문제 옆의 대괄호 점수는 그 문제 혹은 문제들을 풀어서 받을 수 있는 최대 점수입니다.

01~04 [선택 문항] 집합 \(S\)를 정수 \(a\), \(b\)에 대해 \(a^2 + b^2\) 꼴로 나타낼 수 있는 수들의 집합이라고 생각합시다. 예를 들어, \(53 = 2^2 + 7^2\)이므로 \(53 \in S\)이고, \(89 = 5^2 + 8^2\)이므로 \(89 \in S\)입니다. [50점]

  01 \(S\)의 모든 원소들을 작은 순서대로 늘어놓았을 때 \(15\)번째에 오는 값을 구하세요. [5점]

  02 \(x \in S\)이면 \(2x \in S\)임을 증명하세요. [10점]

  03 \(k\)가 정수일 때 \(x = 4k + 3\)이라면 \(x \not \in S\)임을 증명하세요. [25점]

  04 [50점]
    01 \(x\)가 정수일 때 \(2x \in S\)이면 \(x \in S\)임을 증명하세요. [15점]
    02 \(x \in S\)이고 \(y \in S\)이면 \(xy \in S\)임을 증명하세요. [35점]



05~06 [선택 문항] [40점]

  05 ∠C가 직각인 삼각형 ABC가 있습니다. AC 위에 AD = 2DC인 점 D를 잡습니다. D에서 AB에 내린 수선의 발을 H라고 하고, BDCH의 교점을 P라 합니다. BDCH일 때 BP : PD를 구하세요. [30점]

  06 \(x^4+x^3+2x^2+2x+1=0\)의 실수해가 없음을 증명하세요. [40점]

07~08 바닥(floor) 함수는 실수 \(x\)보다 크지 않은 최대 정수로 정의되는 함수이며, 기호로 \(\left \lfloor x \right \rfloor\)을 사용합니다. [40점]

  07 \(3\) 이상의 정수 \(a\)에 대해 \(x = a + \frac{1}{a}\)일 때, 다음 식을 \(a\)에 관한 다항식으로 간단히 하세요. [10점]       \[\left \lfloor x + x \left \lfloor x + x \left \lfloor x \right \rfloor \right \rfloor \right \rfloor\]
  08 \(\left \lfloor x \right \rfloor\)는 \(a_{n}x^{n} + a_{n-1}x^{n-1} + \cdots + a_{2}x^{2} + a_{1}x + a_0\) (단, \(a_0, a_1, \cdots, a_n\)은 모두 상수)의 꼴로 나타낼 수 없음을 증명하세요. [30점]



09~12 [선택 문항] 각 문제의 조건에 맞는 정수 \(x\)를 구하세요. 만약 여러 개라면 모두 구하세요. [70점]

  09 [10점]       \[x^2 - 7x + 10 = 0\]
  10 (\(\left \lfloor x \right \rfloor\)는 \(x\)보다 크지 않은 최대 정수입니다.)[20점]       \[\frac{x}{2} - \left \lfloor \frac{x}{4} \right \rfloor = \frac{1}{2}\]
  11 [40점]       \[x \sin {x}^{\circ} = 15\]
  12 [70점]       \[x^3 + 3x^2 - 6x + 2 = 0\]

2014년 1월 14일 화요일

제 1회 놀먹 C언어 능력 시험 29번 문제 풀이

코드 풀이는 간단합니다.

#include <stdio.h>

int main() {

    int a, b, cnt = 0;
    for (a=1; a<50; ++a) {
        for (b=1; b<50; ++b) {
            if ((a + b) == (a | b)) {
                ++cnt;
            }
        }
    }
    printf("%d\n", cnt);
    return 0;
}
// 516 출력

코드를 작성하지 않고 푸는 풀이는 다음과 같습니다.

우선 식을 변형하겠습니다. 이진법의 계산과 받아올림의 원리에 따라
a + b = (a ^ b) + (a & b) << 1
모든 양수 c에 대해서 c << 1은 c * 2이므로,
a + b = (a ^ b) + (a & b) * 2 = (a ^ b) + (a & b) + (a & b)
f(a, b) = (a ^ b) + (a & b)라고 잡고 a, b에 따른 계산을 해 주면
f | 0 | 1
--+---+---

0 | 0 | 1
--+---+---
1 | 1 | 1
f(a, b) = a | b라는 결론을 간단하게 내릴 수 있으므로,
주어진 조건문은 a | b == (a | b) + (a & b)가 되므로
그것을 a & b == 0으로 간단하게 바꿀 수 있습니다.

a의 비트가 xyz라고 합시다. 만약 x가 0이라면, b의 x 자리에는 임의의 비트(2가지의 경우)가 올 수 있습니다. 만약 x가 1이라면, b의 x 자리에는 반드시 0 비트(1가지의 경우)가 와야 합니다. 따라서 a가 정해져 있을 때, b가 될 수 있는 개수는 2(a의 0인 비트의 개수)개입니다.

i) 1 ≤ a < 32, 1 ≤ b < 32(XXXXX, a 기준으로 변하는 비트 5개)인 경우에는,
1) 0이 하나도 없음: 5C020 = 1
2) 0이 하나 있음: 5C121 = 10
3) 0이 두 개 있음: 5C222 = 40
4) 0이 세 개 있음: 5C323 = 80
5) 0이 네 개 있음: 5C424 = 80
각각의 경우에서, b ≠ 0이므로 이 경우 31가지를 제외하면
합: 1 + 10 + 40 + 80 + 80 - 31 = 180
ii) 1 ≤ a < 32, 32 ≤ b < 48(10XXXX, b 기준으로 변하는 비트 4개)인 경우에는,
1) 0이 하나 있음: 4C021 = 2
2) 0이 두 개 있음: 4C122 = 16
3) 0이 세 개 있음: 4C223 = 48
4) 0이 네 개 있음: 4C324 = 64
4) 0이 다섯 개 있음: 4C425 = 32
각각의 경우에서, b ≠ 0이므로 이 경우 16가지를 제외하면
합: 2 + 16 + 48 + 64 + 32 - 16 = 146
iii) 1 ≤ a < 32, 48 ≤ b < 50(b 기준)인 경우에는,
1) b = 48(110000(2)) : 24 - 1 = 15
2) b = 49(110001(2)) : 23 - 1= 8
각각의 경우에서, b ≠ 0이므로 이 경우 2가지를 제외하면
합: 16 + 8 - 2 = 22
iv) 32 ≤ a < 48인 경우에는 32 ≤ b인 경우가 존재할 수 없으므로, a와 b를 바꾸면 ii)와 같아지고, 순서만 뒤바뀐 것입니다. 따라서 개수는 ii)에서 구했던 그대로 146
v) 48 ≤ a ≤ 50인 경우에는 32 ≤ b인 경우가 존재할 수 없으므로, a와 b를 바꾸면 iii)와 같아지고, 순서만 뒤바뀐 것입니다. 따라서 개수는 iii)에서 구했던 그대로 22

모두 더하면, 180 + 146 + 22 + 146 + 22 = 516

출제진들은 여러분들이 당연히 프로그래밍할 거라고 생각했습니다.
일단 이렇게도 풀 수 있지만 이렇게 풀면 정말로 약 빤거죠 저도 쓰면서 여러번 실수했는데
고, 불가능한 건 없습니다. 혹시 풀이가 이해 안 되시면 댓글 달아주세요.

2014년 1월 13일 월요일

제 2회 C언어 시험 계획

안녕하세요, kipa00입니다.

SecondMk를 수정 인용:

1회 C언어 시험(2013학년도 12월 놀먹 C언어 능력시험)에 이어서,
2회 C언어 시험을 열 계획입니다.
전체적인 시험은 이전 시험과 같습니다만,
이전 시험에서의 경험을 바탕으로 보완을 하고자 합니다.

문법 문항 수 감축


문법을 직접적, 간접적으로 묻는 문제들이 굉장히 많았습니다. 거의 절반이었죠...
게다가, 실제로는 사용될 일이 거의 없는 문법을 묻는 문제들도 있었습니다.
그래서 2회 시험에서는 문법 문항 수를 확실히 줄이겠습니다.
대신, 알고리즘을 묻는 문제들의 비중을 높이겠습니다.

평균 60점대


전 솔직히 1회 시험에서 평균 60점을 예상했습니다만, 평균 40.36점이 나오더군요 ㅋㅋㅋ
출제 중에 출제자들 사이에서 평균 80점 나오면 어떡하냐[1]는 이야기가 나오기도 했는데,
응시자 최고점이 79점...
문법을 묻는 문제들이 많았던 탓이 큰 것 같습니다.
어려운 문제들, 특히 낚시 문제들은 거의 없도록 하겠습니다.
실제 실력이 드러날 수 있는 시험문제를 만들도록 하겠습니다.

시험 시간


저번 시험에는, 사실 시험 시간이 조절 실패였죠. 20분 추가의 번복이 있었고...
시험 시간이 몇 분이 될지는 아직 모르겠습니다만, 적절하게 조절하도록 하겠습니다.

그리고, 응시자 여러분들께서 29번 문제를 아무도 풀지 못했다는 것에 의문이 좀 드는데...
시험 문제는 컴퓨터를 사용해서 풀어도 아무 상관이 없습니다.
그리고 29번[2]과 30번은 코딩해서 풀어내지 않으면 답을 찾는 게 사실상 불가능했고요.
다음 시험에서는 컴퓨터를 잘 활용하시길...!

시험 일은 언제가 될지 아직까지 정확히는 모르겠습니다.
시험 문제 출제 이후에 자세한 내용을 발표하도록 하겠습니다.

2013학년도 12월 C언어 능력시험 문제보기 → 여기를 클릭

<각주>
[1] 제가 그랬습니다. 그 때 암겨혀님이랑 더 복잡하게 내자고 했던 것도 기억납니다.
[2] 29번 문제, 컴퓨터 없이 풀이: 식을 변형하면 a & b가 0이 되는 것을 찾아주면 된다는 것을 쉽게 알 수 있습니다. 따라서 1 ≤ a < 32, 32 ≤ a < 48, 48 ≤ a일 때 비트를 고려하여 b의 개수를 세어 주신 다음 모두 더하면 됩니다. 자세한 풀이는 여기서 보실 수 있습니다.

덧붙여 말씀드립니다. 저는 제 2회 C언어 29번, 30번 출제자입니다.
이번 29번, 30번 문제도 프로그래밍하셔서 푸셔도 되고, 그렇게 하셔야 합니다.
29번, 30번 문제의 풀이는 먼저 알고리즘을 설명한 뒤,
그에 맞는 코드를 보이는 방식으로 하겠습니다.
그 외 다른 알고리즘 문제들의 풀이가 어떻게 적힐는지 모르겠습니다만,
대체로 이 방식(코드가 필요없으면 알고리즘만 보임)이 될 것 같습니다.

이상입니다. 감사합니다. kipa00