2025년, 코딩은 선택이 아닌 필수!

2025년 모든 학교에서 코딩이 시작 됩니다. 먼저 준비하는 사람만이 기술을 선도해 갑니다~

강의자료 343

[초등 1학년 2학기]짝수와 홀수란

참고문제 : https://ko.khanacademy.org/math/kor-1st-2/xdffa2afcc11cd098:1-2-1/xdffa2afcc11cd098:1-2-1-8/v/introduction-to-even-and-odd 짝수와 홀수에 대해 배우고 어떤 수가 짝수인지 또는 홀수인지 알아내는 방법을 살펴 봅니다. ​ 짝수란? 도넛이 여러개 있을 때 두명에게 똑같이 나누어 줄 수 있으면 짝수, 그렇지 않으면 홀수라고 합니다. 즉 짝수는 2의 배수입니다. ​ 작품소개 처음시작하면 엔트리봇이 어떤 수를 생각하고 그 수가 짝수인지 홀수인지를 묻습니다. 만약 31은 짝수인지 홀수인지 맞혀보세요? 라고 말했을 때 홀수라고 말하면 정답입니다. 틀리면 틀렸습니다. 를 말합니다. ​ 알고리즘 수,정답 의 변수를..

[정보올림피아드 대비]16. 점화식(재귀 포함)을 이용한 문제

점화식이란 수열에서 이웃하는 두개의 항 사이에 성립하는 관계를 나타내는 관계식이다. 즉, 수열 { an }의 각 항 an 이 함수 f를 이용해서 f(an) = an+1 과 같이 귀납적으로 정의 될때 f를 수열 {an}의 점화식이라고 하며 또한 수열 {an}은 점화식 f로 정의 된다고 한다. 예) 하노이의 탑 유명한 하노이이탑 문제는 n개의 원판을 이동하는 회수를 수열 an으로 정의 하면 n개의 원판을 이동시키기 위해서는 그 위쪽 n-1개의 원판을 다른 막대로 이동한 후, 맨 아래쪽 원판을 이동하고 다시 n-1개의 원판을 이동해야 하므로 다음과 같은 점화식이 성립함을 알수 있다. f(n) = f(n-1) + 1 + f(n-1) = 2*f(n-1) + 1 = 2^n - 1 (단, f(1)=1) 예) 피보나치..

[알고리즘] 분할정복

분할정복 알고리즘이란? 분할정복(Divide and conquer algorithm)은 그대로 해결 할 수 없는 문제를 작은 문제로 분할하여 문제를 해결하는 방법이다. 대표적인 예로 퀵정렬 또는 합병정렬과 같은 알고리즘이 있다. 알고리즘을 설계하는 요령 - Divide : 문제가 분할이 가능한 경우, 2개 이상의 문제로 나눈다. - Conquer : 나누어진 문제가 여전히 분할이 가능하면 또 다시 Divide를 수행한다. 그렇지 않으면 문제를 정복한다. - Combine : : Conquer한 문제들을 통합하여 원래 문제의 답을 얻는다. ※ 문제를 제대로 나누면 conquer 하는 것이 쉽기 때문에 Divide 를 제대로 하는것이 가장 중요하다. 분할정복 알고리즘 예 function F(x): if F(..

[초등 1학년 2학기] 10이 되는 수를 찾기 엔트리 코딩

https://ko.khanacademy.org/math/kor-1st-2/xdffa2afcc11cd098:1-2-4/xdffa2afcc11cd098:1-2-4-6/v/getting-to-10-by-filling-boxes 오늘은 1학년 2학기에서 배우는 10보다 작은 어떤 임의의 갯수의 햄버거가 있는데 몇개를 더 더했을때 10이 되는지를 확인하는 게임을 만들어 보겠습니다. ​ 1학년 1학기에서 1부터 10보다 작은 수를 배웠는데 조금 더 확장해서 두자리수를 배우기 전에 두자리수의 처음이 되는 10이 되는 원리를 이해하고 여기에서 덧셈과 뺄셈의 개념을 이해하게 됩니다. ​ 작품소개 처음 시작하면 그릇에 임의의 갯수(1부터 9 사이)의 햄버거를 담아 놓은 다음 엔트리봇이 다음과 같이 질문을 합니다. "그릇..

[인공지능수학] 등차수열의 합 실습하기

등차수열이란? 앞과 뒤의 두 항의 차이가 일정한 수열을 말합니다. 11,14,17... 은 두 항의 차이(공차)가 3으로 일정한 등차 수열입니다. 이러한 등차 수열에서 n번째 항의 값 = 초항 + (n-1) * (공차) 예를 들어 1 부터 시작하는 공차 1인 수열이라면 1,2,3,... 과 같이 진행 되는데 10번째 항의 값을 구하려면 초항 1의 9번째 뒤의 값이므로 (10-1)번째 * 공차(1) 을 더해 주면 10이라는 수를 구할 수 있습니다. 등차수열의 합은 (초항 + n번째 항의값) * n(개) / 2로 확인을 할 수 있는데 이 공식은 가우스가 초등학교 3학년때 1부터 100까지의 수를 더하라는 선생님의 문제에 1과 100을 짝짓기 해서 50개를 만들어서 곱셈으로 풀었다는 그 유명한 공식입니다. 오..

[정보올림피아드 대비]15. 집합의 성질을 이용한 문제

1.집합(Set)이란? 명확한 기준에 의해 분류되어 공통된 성질을 가지며 중복되지 않는 원소(Element,Member)의 모임 2. 집합의 표기 방식 1. 원소나열법 : 집합에 포함되는 원소들을 일일이 나열하는 방법 예) A = {1,2,3,4,5} 2. 조건제시법 : 집합에 포함되는 원소들이 공통적인 성질을 조건식으로 제시하는 방법 예) A = {x | 0< x

[자료구조] Suffix Array(접미사 배열)

컴퓨터 과학에서 접미사 배열(Suffix Array)란 어떤 문자열의 접미사를 사전식 순서대로 나열한 배열을 말한다. S = S[0]S[1]...S[n-1] 이라는 문자열이 있다고 하자. 이때 S[i,j] 는 i번째 문자부터 j번째 문자 까지 S의 부분 문자열이라고 하자. 문자열 S에 대한 접미사 배열 A는 S의 접미사들을 사전식 순서로 정렬 했을 때 접미사의 시작 위치를 저장한 정수 배열이다. 즉 A[i] 에 저장 된 내용은 사전순으로 i 번째인 S의 접미사의 시작 위치이다. 다시 말하면 문자열 S의 길이를 n이라고 할 때 , 0

[초등 1학년 1학기] 어떤 수가 클까요?

문제 출처 : https://ko.khanacademy.org/math/kor-1st-1/x22720cd23d5246e1:1-1-5 5단원에서는 50까지의 수를 배웁니다. 여기서는 1부터 50까지의 임의의 수를 퀴즈를 내서 어떤 수가 큰지 맞춰 보는 게임을 만들어 보겠습니다. ​ 작품소개 엔트리봇이 시작하기를 클릭하면 1부터 50까지의 임의의 수 2개를 선택합니다. 그리고 그 두수 중 어떤 것이 큰지 정답을 말하라고 하면서 정답을 맞추면 참 잘했어요! 라고 말하면서 +10 점을 틀리면 조금 더 노력하세요! 라고 말하면서 -5점을 줍니다. ​ 총 10문제를 출제하고 마지막에 당신의 점수는 ()점입니다. 라고 말을 합니다. ​ 알고리즘 1부터 50까지의 임의의 수를 저장할 변수 두개를 선언합니다.(첫번째수,..

[자료구조] Persistent Segment Tree (PST)

Persistent 의 의미는 보존 된다는 의미인데 이 알고리즘의 핵심은 서로 다른 세그먼트 끼리 값을 보존 하며 공유하는 것이 핵심입니다. 예제 문제로 다음의 문제를 예로 들어 봅시다. https://www.acmicpc.net/problem/11012 11012번: Egg You are a president deeply loved by many folks in your country. Every time you go on a parade (which is your main job, what else should a president do), the folks would throw eggs at you — because you love eggs! The folks passionately send the..

[초등 1학년 1학기] 길이 비교하기

문제출처 : https://ko.khanacademy.org/math/kor-1st-1/x22720cd23d5246e1:1-1-4 ​초등학교 1학년 1학기 4단원에서는 길이 비교하는 것을 연습합니다. ​눈을 통해 직관적으로 비교해 보는 단원입니다. 생활 속의 물건은 모두 다르게 생겼고 길이가 모두 다릅니다. ​ 작품소개 ​ 오늘은 두개의 연필을 올려 놓고 랜덤한 사이즈로 크기를 변경한 다음 크기가 큰 물건을 클릭하면 참잘했어요~, 잘못 클릭하면 좀더 노력하세요. 라는 말을 합니다. ​​ ​ 실행결과 ​ ​ 알고리즘 1학년 1학기에 크기 비교하는 것을 눈대중으로 크기 비교하는 것을 연습해 봅니다. 코딩에서는 신호보내기, 변수, 절댓값처리,클릭이벤트 처리 등에 대해 배웁니다. ​ 두개의 연필을 준비한다. 연..