본문 바로가기
알고리즘 설명/정보올림피아드 필기

2021년 정보올림피아드 필기 초등부(1 ~ 5)

by 다빈치코딩 2024. 3. 27.

목차

    반응형

    2021년도 정보 올림피아드 1차대회 초등부 필기 1번부터 5번까지 풀이 입니다.

    1번

    첫 번째 결과는 더하기, 빼기로 2가지 입니다. 두 번째 결과는 곱하기, 나누기, 나눗셈의 나머지로 3가지 입니다. 따라서 출력은 2 * 3으로 6가지가 됩니다.

    하지만 여기서 한가지를 더 확인해야 합니다. 혹시라도 같은 결과가 나올 수 있기 때문 입니다. 만약 a가 1, b가 1이라면 곱하기, 나누기의 결과가 1로 같기 때문에 6가지가 나오지 않을 수 있습니다. 다행히 4와 2로 연산한 결과가 모두 다르기 때문에 6가지가 맞습니다.

     

    2번

    10등의 수상자에게 2개의 쿠키를 나눠주었다면 9등은 3개, 8등은 4개가 됩니다. 따라서 1등은 11개의 쿠키를 받을 수 있습니다. 2부터 11까지 하나하나 더해주어도 되고, 등차수열의 합의 공식을 이용하여 구해주어도 됩니다.

    (11 + 2) * 10 / 2 = 65

    위와 같은 공식을 사용하면 65가 나옵니다.

    1부터 10까지의 합이 55라는 사실을 알고 있다면 55 + 11 - 1을 사용하여 65라고 알수도 있습니다.

     

    3번

    교란 수열 문제 입니다. 교란수열의 갯수는 정해져 있어서 정답은 총 9가지 입니다. 교란수열에 대해서는 아래 링크 확인 바랍니다.

    2024.03.22 - [알고리즘 설명] - 교란 순열이란?

     

    교란 순열이란?

    완전 순열(Complete permutation) 또는 교란(derangement) 순열이라 불리는 순열에 대해 알아보겠습니다. 교란 순열의 예를 들어 보겠습니다. 교란 순열이란? 졸업을 맞이하여 서로를 축하하기 위해 친구 N

    davincicoding.co.kr

    4번

    4자리 수를 9배 했는데 그대로 4자리가 되려면 무조건 천의 자리는 1이어야 합니다. 그리고 1의 자리는 9가 되어야 합니다. 왜냐하면 1XXX라는 숫자에 9를 곱하면 9XXX가 될 것이고 이는 거꾸로 바뀐 네자리가 되기 때문 입니다. 따라서 1XX9라는 숫자를 9배 했을 때 9XX1이라는 숫자가 나오게 됩니다. 9 * 9는 81로 마지막에 1이 나오게 만들 수 있습니다.

    그리고 백의 자리는 0이나 1이 되어야 합니다. 왜냐하면 백의 자리가 2 이상이면 9배를 하는 순간 자릿수 올림이 생기기 때문입니다. 0이나 1중에서 1은 될 수 없습니다. 만약 백의 자리가 1이라면 11X9라는 숫자인데 이것을 9배하면 9X11 라는 숫자를 만들 수 없습니다. 일의 자리의 곱인 9 * 9로 81이 되는데 80을 올림해서 십의 자리가 1이 되려면 9를 곱한 값이 3으로 끝나야 됩니다. 이것을 만족하는 십의 자리는 7만 가능합니다. 1179 * 9는 10611로 십의자리와 일의자리를 11로 만들 수는 있지만 다른 조건을 만족시킬수는 없습니다.

    따라서 백의 자리가 0이라고 하면 10X9가 되고, 이것을 9배 했을 때 9X01이되려면 X가 8이 되어야 합니다. 8 * 9가 72로 8을 더했을 때 0이 되기 때문 입니다.

    따라서 정답은 1089 입니다. 1089 * 9 = 9801로 뒤집었을 때 거꾸로 바뀐 것을 알 수 있습니다.

     

    5번

    둘레가 12인 직사각형 모양의 울타리를 만들어 보면 한 변의 길이가 3인 정사각형 이거나, 한 변의 길이가 2, 4인 직사각형, 한 변의 길이가 1, 5인 직사각형 입니다.

    직사각형의 위치와 방향을 바꿔가면 나무의 수를 세어봤을 때, 위와 같이 울타리를 만들 때 10개의 나무를 감쌀 수 있습니다.

    반응형