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

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

강의자료 325

[인공지능수학] 중심극한정리

1. 중심극한정리(central limit theorem)란? 확률론과 통계학에서 중심극한정리는 동일한 확률분포를 가진 독립확률변수 n개의 평균의 분포는 n이 적당히 크다면 정규분포에 가까워진다는 정리이다. 이 의미는 다음과 같다. 모집단이 있을 때 여기서 30개의 샘플을 뽑아 표본을 만든다. 그 다음 표본의 평균을 계산한다. 이런 과정을 여러 번 반복해서 1000개의 평균을 만들어 놓는다. 그리고 이 1000개의 평균을 히스토그램으로 그리면 놀랍게도 정규분포를 따른다. 현실에서는 표본을 수집하는 일에 비용이 많이 들지만 파이썬 프로그램을 사용해 이런 과정을 간단히 묘사할 수 있다. 예를 들어 남산도서관 대출데이터를 가지고 확인을 해 보자. 혼자공부하는데이터분석 에서 제공하는 자료 ( https://bi..

[정보올림피아드 대비]20. 저울을 이용한 문제

저울 문제란? 일명 천칭문제라고도 불리우는 양팔저울 혹은 전자저울을 이용하여 문제를 풀어나가는 문제를 의미한다. 전자 저울은 무게를 수치로 정확하게 잴 수 있지만 대개 1번 등의 매우 적은 횟수로만 무게를 판별하라고 한다. 또 무게를 비교하는 용도로는 양팔 저울에 비해 약간의 응용이 필요한 문제들이 출제되고 있다. 양팔 저울은 무게를 수치로 정확하게 잴 수 없는 대신 횟수는 3번 정도는 주어지는 편이다. 무게의 상대적 가벼움과 무거움을 재는 데에는 유리하지만 수치적으로 나열하기는 어렵다는 특징이 있다. 저울 관련한 유형은 최적화의 개념이나 부등식의 성질을 이해하여 해결하는 문제로 교과나 경시에서 관련 문제가 자주 출제 된다. 문제1) 크기와 모양이 같은 공 11개가 있다. 이 공들 중 무게가 다른 공은 ..

[알고리즘] 부분합

부분합 알고리즘이란? N명의 시험 성적을 내림차순으로 정렬해 둔 score[] 가 있다고 하면 여기서 우리는 a등에서 b등까지의 평균을 구하려고 한다. 가장 간단한 알고리즘으로는 a등부터 b등까지의 합을 구한 다음 b - a + 1 로 나누는 것이다. 하지만 이렇게 구하는 횟수가 빈번해진다고 하면 1회를 구할 때마다 최대 N번씩 반복하게 된다. 이럴 때 유용하게 사용하는 것이 부분합(Partial sum)이다. 위와 같이 psum 테이블을 미리 구해 놓는다고 하면 2번지 부터 4번지까지의 부분합을 구하려고 하면 psum[4] 는 0,1,2,3,4 의 모든 합이기 때문에 여기서 0,1 의 값을 빼면 2번지부터 4번지 까지의 부분합이 된다. 따라서 psum[4] - psum[1] 의 값이 2번지 부터 4번지..

[인공지능수학] 누적분포

1. 누적분포란 평균이 0이고 표준편차가 1인 정규분포를 표준정규분포라고 한다. 평균이 0이고 표준편차가 1인 z점수 공식에 대입하면 z = x 가 된다. 따라서 표준 정규분포는 z 점수를 사용해 전체 데이터가 어떻게 분포되어 있는지 나타낼 수 있다. 예를 들어 표준정규분포에서 z 점수가 1.0 이내에 위치한 샘플은 전체의 약 68%에 해당한다. z점수 2.0 이내에 위치한 샘플은 95%에 해당한다. 여기서 x축은 샘플값 또는 z점수, y축은 샘플의 등장 빈도 또는 밀도가 된다. 그럼 z 점수 1.5 이내에 있는 샘플의 비율은 얼마나 될까? 2. 누적분포 구하기 누적분포는 주어진 확률이 특정 값보다 작거나 같은 확률을 나타내는 값이다. 가령 표준정규분포에서 평균 0 까지 누적분포는 정확히 50%가 될것이..

[정보올림피아드 대비]19. 방정식을 활용한 문제

방정식이란? 기본적인 연산을 할 때 구체적인 수들을 볼 수 있어요. 가령 23 + 5 = 28 과 같이 계산이 되는 것을 볼 수 있습니다. 대수의 세계로 들어가면서 변수라는 개념을 다루게 됩니다. 변수란 바뀔 수 있는 값이나 식을 의미합니다. 예를 들어 x + 5 라고 쓴다고 하면 x 의 값에 따라 결과값은 달라 집니다. 이러한 것은 하나의 식이라고 합니다. 여기서 식과 방정식의 차이를 확인해 보겠습니다. 식은 단지 어떤 값을 나타내는 표현입니다. 예를들어 x + 5 라는 식은 x의 값에 따라 결과값이 바뀔것입니다. 방정식의 경우는 식이 서로 같다고 가정하고 시작합니다. 예를 들어 x + 5 = 10 이라고 하면 한개의 값을 모르는 상황에서 x의 값을 알아낼 수 있습니다. 이렇게 미지수가 포함된 식에서 ..

[알고리즘] 조합탐색

조합탐색이란? - 완전 탐색 알고리즘은 대개 답을 만드는 과정을 여러개의 선택으로 나눈 뒤 재귀 호출을 이용해 각각의 선택지를 채워가는 형태로 구현됨 - 기존 완전 탐색은 모든 답을 다 만들어 보면서 문제를 해결하므로 완전 탐색의 수행시간은 탐색 공간의 크기에 직접적으로 비례 - 이는 문제의 규모에 따라 기하급수적으로 크기가 증가. - 조합탐색이란 완전 탐색을 포함해 유한한 크기의 탐색 공간을 뒤지면서 답을 찾아 내는 알고리즘 목표 - 기본적으로 모두 최적해가 될 가능성이 없는 답들을 탐색하는 것을 방지하여 만들어 봐야 하는 답의 수를 줄이는 것을 목표로 함 조합탐색 최적화 기법 - 가지치기 : 탐색 과정에서 최적해로 연결될 가능성이 없는 부분을 잘라낸다. 예) 외판원 문제에서 길이가 10인 경로를 이미..

[초등 1학년 2학기]시계 보기와 규칙 찾기

참고 문제 - https://ko.khanacademy.org/math/kor-1st-2/xdffa2afcc11cd098:1-2-5#xdffa2afcc11cd098:1-2-5-3 ​ 시각의 쓰임을 알수 있고 몇시와 몇분을 5분 단위로 말하고 나타낼 수 있다. 분은 숫자가 1일때 5분,2일때 10분... 과 같이 읽을 수 있으며~ 시는 숫자가 12 와 1 사이일 때 12시,1과 2 사이일 때 1시와 같이 읽을 수 있는 것을 연습할 수 있다. ​ 작품소개 처음 시작하면 시계에 임의의 시간을 나타내고 현재 시간은 몇시입니까? 라고 묻는다. 몇시인지 맞추면 다음으로 현재시간은 몇분입니까? 라고 묻는다. 정답이라면 정답입니다. 가 출력되고 틀린 경우 현재 시간은 몇시 몇분입니다. 라고 출력 된다. ​ ​ 알고리즘..

[인공지능수학] 표준점수

1. 표준점수란? 데이터가 정규분포를 따른다고 가정하고 각 값이 평균에서 얼마나 떨어져 있는지 표준편차를 사용해 변환한 점수를 표준점수(standard score) 또는 z점수 라고 한다. 예를 들면 다음과 같다. 출생한 아기의 몸무게와 키에 대한 데이터가 있다고 가정해 보자.몸무게와 키가 평균으로부터 얼마만큼 떨어져 있는지 나타내려면 몸무게는 1kg, 키는 5cm 와 같이 다른 단위를 써야 한다.게다가 이런 수치만 보아서는 평균으로부터 몸무게가 더 멀리 떨여져 있는지, 키가 더 멀리 떨어져 있는지 알기 어렵다. 그래서 z점수라는 값을 사용한다. 2. 표준점수(z점수) 구하기 z점수는 평균까지의 거리를 표준편차로 나눈 값이다. 식은 다음과 같다. z점수 = (x - 모집단평균)/모집단의 표준편차 와 같이..

[정보올림피아드 대비]18.그래프 관련 문제(한붓그리기외)

1. 그래프란? 그래프 : G=(V,E) 여기서 V는 정점(Node 라고도 하며 꼭짓점이라고도 한다.), E는 엣지( Vi~Vj 를 연결하는 모서리)라고 하며 그래프는 정점과 모서리의 집합으로 구성된 구조를 의미한다. 예) 위와 같은 형태가 그래프이다. 2. 그래프 인접(Adjacent),근접(Incident),루프(Loop) - 인접(Adjacent),근접(Incident) 그래프 G=(V,E)에서 꼭짓점 a와 b를 연결한 모서리 ab가 있을 때 꼭짓점 a와 b는 서로 인접하고 모서리 ab는 꼭짓점 a와 b에 근접한다. - 루프(Loop) 인접하는 꼭짓점이 하나인 모서리 e 3. 방향그래프 화살표로 모서리를 표현해 인접하는 꼭짓점 간의 순서를 알 수 있는 그래프 G = 로 표현하며 인접하는 꼭짓점 사이..

[인공지능수학] 호도법/도수법 실습하기

https://wondangcom.tistory.com/2135 에서 도수법과 호도법에 대해 살펴 보았습니다. 이번 시간에는 도수법과 호도법을 파이썬으로 변환하는 방법에 대해 살펴 보도록 하겠습니다. 1. 도수법 -> 호도법 도수법 60도를 호도법인 deg로 나타내는 방법을 살펴 보도록 하겠습니다. import numpy as np import math deg1 = 60 * math.pi / 180 print(deg1) deg2 = np.deg2rad(60) print(deg2) deg3 = math.radians(60) print(deg3) deg1 은 1도 = pi/180 이므로 직접 연산을 한 값 deg2은 numpy 에서 제공하는 deg2rad 메서드로 연산을 한 값 deg3은 math 함수에서 ..