인공지능 시대, 코딩은 선택이 아닌 생존 전략입니다

코딩은 미래를 지배하는 기술의 언어, 당신의 가능성을 열어줄 열쇠입니다.

강의자료 334

[정보올림피아드 대비]2. 수열을 응용한 문제(등차수열,등비수열 외)

목표 정보올림피아드 1차 예선 문제중 50%에 해당하는 200점이 이산수학 + 비버챌린지 유형으로 제출 됩니다. 실기문제 2문제를 모두 만점을 맞는 것도 중요하지만 실기문제도 수학적인 기반을 갖추고 있는 것이 유용합니다. 특히나 실기문제 유형들 중에서 수열을 응용한 문제들이 다양하게 출제되고 있습니다. 오늘은 수열을 응용한 문제들을 연습하면서 1차예선과 실기문제등을 모두 대비해 봅니다. 문제 등차수열이란 앞과 뒤의 두 항의 차이가 일정한 수열을 말합니다. 1,2,3,4,5,6,7... (1) 은 두 항의 차이가 1로 일정한 등차수열입니다. 11,14,17,20,23,.... (2) 은 두 항의 차이가 3으로 일정한 등차수열입니다. 이렇게 두 항의 차이가 같은 등차수열에서 두 항의 차이를 공차 라고 하며 ..

[컴퓨팅사고력] 1.4kg을 채울 수 있는 가방에 최대 가치를 찾아 보자.

원당이는 동생과 같이 숨바꼭질을 하다가 창고에서 보물지도를 발견하였습니다. 원당이는 동생과 함께 자신의 가방을 가지고 보물찾기에 나섰습니다. 원당이의 가방은 최대 1400g을 채울 수 있는 가방입니다. 무게를 초과하면 가방의 끈이 떨어져서 가방을 사용 할 수 없게 됩니다. 이때 가방이 자유자재로 늘어나는 소재라서 부피는 관계가 없이 담을 수 있습니다. 보물이 있는 동굴에 들어서니 다음과 같은 보석들이 있습니다. 한덩어리가 200g 인 루비는 가치가 40만원입니다. 한덩어리가 500g 인 비취는 가치가 110만원입니다. 한덩어리가 1kg인 다이아몬드는 가치가 200만원입니다. 한덩어리가 300g 인 금은 가치가 50만원입니다. 위와 같은 보석들이 쌓여 있는데 원당이는 어떤 조합으로 가지고 나올때 최대가치는..

[인공지능수학] 활성화 함수

활성화함수란 인공 신경망에서 입력을 변환하는 함수이며 ReLU,시그모이드함수,tanh 함수 등이 대표적인 활성함수이다. 인공 신경망은 뉴런을 본따서 만든 기계학습 알고리즘입니다. 뉴런의 이미지를 살펴 보면 다음과 같습니다. 이러한 뉴런을 본따 만든 인공신경망은 입력값과 가중치 값을 이용하여 출력 여부를 나타냅니다. 위의 이미지는 3개의 입력 데이터를 이용해 2개의 출력 데이터를 만드는 인공신경망의 그림입니다. 이때 hidden을 살펴 보면 3개의 데이터를 입력으로 받아 2개를 출력 하는 뉴런과 같은 신경망이며 각각의 유닛을 살펴 보면 다음과 같은 형태로 나타낼 수 있습니다. 이때 각각의 출력 y1,y2 에 대해 출력신호 y=0,1 로 표현을 할 수 가 있습니다. 어떤 입력값 x1,x2,x3 에 대해 어떤..

Topological Sorting(위상정렬)

Topological Sorting(위상정렬) 이란 위상정렬은 유향그래프(방향그래프)의 꼭짓점들을 변의 방향을 거스르지 않도록 나열하는 것을 의미한다. 위상정렬을 가장 잘 설명하는 예는 선수과목의 구조를 예로 들 수 있다. 특정 수강과목에 선수과목이 있다면 그 선수과목을 먼저 수강해야 하므로 특정과목을 수강해야 할때 위상정렬을 통해 올바른 수강순서를 찾아 낼 수 있다. Topological Sorting(위상정렬) 조건 사이클이 없는 유향 그래프 Topological Sorting(위상정렬) 특징 모든 정점을 일렬로 나열 정점 x에서 정점 y로 가는 간선이 있다면 x는 반드시 y보다 앞에 위치한다. 일반적으로 임의의 유향 그래프에 대해 복수의 위상 순서가 존재한다. Topological Sorting(위..

[정보올림피아드 대비]1. 새로운 연산정의하는 문제

목표 정보올림피아드 1차 유형에서 나오는 수학 문제에서 우리가 알고있는 사칙연산(+,-,*,/) 외에 새로운 유형의 연산자를 정의해서 문제를 풀어 보는 연산정의하는 유형의 문제를 풀어 보고 익히면서 생각하는 힘을 키워봅니다. 문제 a ※ b = a * b - ( a + b) 입니다. 1. 5 ※ 7 의 연산값을 숫자만 입력하시오. 문제풀이) 더보기 5 ※ 7 = 5 * 7 - ( 5 + 7 ) 입니다. 따라서 35 - 12 = 23 2. 7 ※ 5 의 연산값을 숫자만 입력하시오. 문제풀이) 더보기 7 ※ 5 = 5 * 7 - ( 7 + 5 ) 입니다. 따라서 35 - 12 = 23 3. 12 ※ ( 3 ※ 4) 의 연산값을 숫자만 입력하시오. 문제풀이) 더보기 12 ※ ( 3 ※ 4) = 12 ※ ( 3..

정보 영재가 되기 위해서 필요 한 것(?)

제가 가끔 학생들의 문의를 받는 것이 "정보영재가 되기 위해서 어떻게 준비를 해야 되나요?" 란 질문을 받을때가 있습니다. 아래 글은 제 주관적인 생각임을 미리 말씀드립니다.^^ 이러한 질문을 받을때 저는 첫번째로 수학을 꼽습니다. 컴퓨터 과학에서 프로그램의 설계는 수학적인 기반에서 이루어 지는 경우가 많습니다. 수학을 열심히 하라고 하니까 한 학생이 이렇게 되묻습니다. "쌤 수학을 굳이 잘 할 필요 있나요? 그냥 방법만 알면 코딩으로 데이터 입력해서 계산해서 사용하면 되지 않나요?" 맞는것 같습니다.^^ 하지만 잘 생각해 보면 방법을 알고 있다는 것이 그 원리를 알고 있다는 것입니다. 원리를 알고만 있다고 해서 사용하는 연습을 하지 않으면 그 원리도 금방 잊혀 지겠죠~ 그 원리를 연습하다 보면 사용법에..

[자료구조]트라이(TRIE)

트라이의 정의를 위키백과의 내용을 인용하면 다음과 같습니다. 트라이(trie)는 컴퓨터 과학에서 탐색트리의 일종이다. 노드의 모든 자손은 노드에 연관된 문자열의 공통 접두사를 공유한다. 트라이(trie) 란? 문자열 변수를 비교하는데는 최악의 경우 문자열의 길이에 비례하는 시간이 걸릴 수 있습니다. N개의 원소를 갖는 이진검색 트리에서 원하는 원소를 찾으려면 O(lgN)번의 비교만으로 찾을 수 있습니다. 이러한 이진 검색 트리에서 착안을 하여 고안된 문자열 특화 자료구조가 바로 트라이(trie) 로 집합 내에서 원소를 찾는 작업을 O(M) 시간만에 할 수 있습니다. 그렇다면 어떻게 가능한지 다음을 살펴 보시죠~ 그림은 문자열집합 S={"A","to","tea","ted","ten","inn"} 을 저장하..

[인공지능수학] 함수의 개념

함수의 개념 집합 A,B에 대해 집합 A에서 B로 가는 관계가 성립 할 때, 집합 A의 원소 a에 대해 집합 B의 원소 b 하나가 대응 되는 관계, 즉 입력값(정의역)에 의해 하나의 결과값(치역)이 존재하는 관계를 함수라 한다. 따라서 함수는 어떤 입력에 대해 단 하나의 결과를 출력한다. "어떤 입력값 x에 따라 하나의 출력값 y가 결정 된다면 y는 x의 함수" y = f(x) 로 표현한다. 함수의 종류 1차함수 : 정의역과 공역이 실수의 집합인 f(x) = ax+b 와 같은 형태의 함수, 그래프는 직선으로 나타난다. 2차함수 : f(x)=ax2 + bx + c(단 a ≠ 0) 와 같은 형태의 함수,그래프는 포물선 형태 지수함수 : y=ax(단,a를 양의 상수,x를 모든 실수) 와 같은 형태의 함수,로그..

[컴퓨팅 사고력] 논에 물을 공급하기

다음 그림과 같이 강에서 부터 각 마을까지는 파이프로 연결이 되어 있는데 각 연결 되어 있는 파이프의 굵기가 서로 다릅니다. 위의 그림에서 각 숫자는 1시간에 밸브를 최대로 열었을때 흘려 보낼 수 있는 파이프의 용량입니다. 원당이는 가뭄에 대비하기 위해 강으로 부터 여러 마을을 거쳐 논까지 물을 공급할때 한시간에 최대로 보낼수 있는 물의 양을 알고 싶습니다. 여러분이 위의 그림을 보고 1시간에 흘려 보낼 수 있는 최대 양을 구해 주세요. 문제풀이) 더보기 먼저 강에서 A,B,C 마을에 각각 물을 흘려 보내 봅니다. 그 다음 A,B,C 마을에서 통로로 보낼 수 있는 양의 물을 흘려 보내 봅니다. E에서 논으로 750을 흘려 보내고 남은 10을 D로 흘려 보낸 후 D에서 논으로 340을 흘려 보낼 수 있습니..

[컴퓨팅 사고력] 네트워크 연결

원당이는 컴퓨터와 컴퓨터를 모두 연결하는 네트워크를 구축하려고 합니다. 하지만 아쉽게도 허브가 없어서 컴퓨터와 컴퓨터를 직접 연결해야 합니다. 그런데 모든 컴퓨터가 자료를 공유하기 위해서는 모든 컴퓨터가 연결되어 있어야 합니다. 이때 네트워크 연결 비용을 책정해야 되는데 기왕이면 가장 작은 금액으로 연결을 하고 싶습니다. 다음과 같이 컴퓨터와 컴퓨터의 연결하는 비용이 주어졌을때 최소로 모든 컴퓨터를 연결하는 비용은 얼마인지 구해 주세요. 6대의 컴퓨터가 있으며 연결비용은 다음과 같습니다. 컴퓨터번호,컴퓨터번호- 연결비용 1,2 - 5 1,3 - 4 2,3 - 2 2,4 - 7 3,4 - 6 3,5 - 11 4,5 - 3 4,6 - 8 5,6 - 8 문제풀이) 더보기 그림으로 그려보면 위와 같습니다. 여기..