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

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

분류 전체보기 1525

[자료구조] 비트마스크(bitmask)_I

비트마스크란? 컴퓨터는 모든 정수형변수를 이진수로 표현합니다. 이 때 이진수의 한 자리를 비트(bit)라고 부릅니다. 비트는 0 또는 1의 값을 가지며 컴퓨터가 표현하는 모든 자료의 근간이 됩니다. 이러한 이진수표현을 자료구조로 사용하는 기법을 비트마스크(BitMask) 라고 부릅니다. 비트마스크는 엄밀하게 ㅏ료구조라고 할 수는 없지만 굉장히 유용하게 사용 됩니다. 비트마스크를 왜 사용하는가? 1. 더 빠른 수행시간 : 비트마스크 연산은 O(1)으로 구현이 됨, 따라서 여러번 수행하는 경우에는 작은 최적화로 속도 향상을 가져올 수 있음 2. 더 간결한 코드 : 반복문 없으 한줄에 사용하므로 짧은 코드를 작성 3. 더 작은 메모리 사용 : 32비트형 정수형 자료형에 32개의 0/1 형태의 정보를 저장 비트..

제3회 혼공능력시험 안내

C언어/자바/파이썬/머신러닝+딥러닝/프로그래밍 기초/자바스크립트/SQL 7과목으로 구성이 되어 있고 7과목 모두 응시가 가능하네요~ 응시만 하면 과목당 1000포인트를 준다고 하니 한빛미디어 교재 구매시 사용하면 알뜰하게 사용할 수 있을것 같네요.^^ 저도 응시를 해 보았는데 자주 사용하지 않는 것들은 알쏭달쏭한 문제도 있더라구요.^^ 그냥 자신의 실력을 파악하기 위해서 한번 도전해 보는것도 의미가 있을것 같아요^^ 알쏭달쏭했던 부분은 틀리면 바로 정답을 알려 주는 센스~ 다시 한번 짚고 넘어 갈 수 있네요.~ 관심 있는 분은 https://www.hanbit.co.kr/event/current/current_event_view.html?hbe_idx=163&page=0&utm_source=newlett..

[자료구조] 2D 펜윅트리(2차원 펜윅트리)

2차원 펜윅트리를 구현하기 전에 1차원펜윅트리를 먼저 이해합니다.(https://wondangcom.tistory.com/1582) 1차원 배열이 여러개 인 행렬 구조의 데이터가 업데이트가 많은 경우 사용하게 되는데 1차원펜윅트리를 여러 개 이어 붙인 것이 2차원 펜윅트리라고 생각할 수 있다. 2차원의 구간합을 구하기 위해서 2개의 인덱스(y,x)가 필요하다. 그림으로 이해하면 다음과 같다. (x1,y1) ~ (x2,y2) 의 구간합을 구하는 방법을 살펴 보면 먼저 (0,0)~(x2,y2) 의 구간합을 구한다. 이때 녹색과 하늘색 부분인 (0,0) ~ (x1,y2), (0,0)~(x2,y1) 구역을 빼 주면 되는 것을 확인 할 수 있다. 이렇게 두개의 구간 합을 빼 주면 (0,0) ~ (x1,y1) 구간..

2022년 미국정보올림피아드 대회안내

http://www.usaco.org/index.php USACO Impressive Results at IOI 2021! Congratulations to Timothy Feng (gold medal), Siyong Huang (gold medal), Rain Jiang (gold medal), and Richard Qi (silver medal), who represented the USA at the 2021 International Olympiad in Informatics (IOI), hosted by Sing www.usaco.org 2022년 미국정보올림피아드 일정 안내 2021년 12월 17일~20일 : 첫번째 콘테스트 2022년 1월 28일 ~ 31일 : 두번째 콘테스트 2022년 2월 ..

2022학년도 서울여자대학교 정보보호 영재교육원 학생선발

서울여자대학교 정보보호 영재교육원에서 위와 같이 학생을 선발하고 있습니다. 중학교과정으로는 중등기초/중등심화반 을 모집하고 있으며 고등학교과정으로 고등기초.심화/고등전문A/고등전문B 과정을 모집중입니다. 지원자격 중등기초 - 서울/인천/경기/강원 지역 및 제주지역에 거주하는 중학교 1~3학년(2022학년도 기준) 학생으로 정보 보호 분야에 꿈과 재능이 있다고 인정되는 중학생 중등심화 - 2021학년도 중등부 기초반 수료자/중등기초 수준의 지식을 보유한 학생 고등기초.심화 - 서울/인천/경기/강원 지역 및 제주지역에 거주하는 고등학교 1~3학년(2022학년도 기준) 학생으로 정보 보호 분야에 꿈과 재능이 있다고 인정되는 중학생 고등전문(해킹준비/추적과정) - 2021학년도 고등부 기초.심화반 수료자 / 고..

2021년 과고/영재고/마이스터고 최종합격을 축하합니다.

2년 넘게 저희와 같이 공부를 한 김*경 학생이 이번에 인천과고에 최종합격을 했다는 소식을 받았습니다.^^ ============================================= 김*경 학생의 인천과학고등학교 최종합격을 진심으로 축하합니다. ============================================= 초등학교때 정보올림피아드 입상기록이 있는 정*원 학생이 이번에는 인천과학예술영재학교에 최종합격했네요.^^ ============================================= 정*원 학생의 인천과학예술영재학교 최종합격을 진심으로 축하합니다. ============================================= 조*빈 학생이 전자마이스터고등학교 특별전형..

2021년 선린고 겨울방학 중학생 특별교육 안내

https://sunrint.sen.hs.kr/ 공지/행사 | 선린인터넷고등학교 sunrint.hs.kr 중학교 2학년 학생 대상으로 프로그래밍 기초과정/온라인쇼핑몰제작기초과정/UI UX기초과정/영상제작 기초과정의 특별교육을 실시하고 있습니다. 경기/인천지역 중학생은 학교로 문의하여 공문을 요청하거나 k-에듀파일 공문을 확인 하여 공문발송을 해야 한다고 합니다. 접수기간은 12월 6일부터 12월 9일까지이며 교육대상자 발표는 12월 15일입니다. 본 교육을 수료후 선린고 입학시 특별전형 중 본교특별교육과정 이수자 전형으로 지원 할 수도 있으므로 선린고 입학에 관심이 있는 중2 학생이라면 특별교육을 이수 하는 것도 좋은 방법인것 같네요. 선린고 입시에 관심이 있는 학생들이라면 해당 내용을 확인하시고 지원하..

[자료구조] 펜윅트리(Fenwick Tree)

펜윅트리(Fenwick Tree)란? - Binary Indexed Tree 라고도 하며 이진수를 이용하여 위치값을 표현하는 세그먼트 트리와 유사한 트리 펜윅트리(Fenwick Tree) 의 개념 10진수 수를 이진수로 표현해 보면 다음과 같다. 3 = 00000011 4 = 00000100 5 = 00000101 6 = 00000110 8 = 00001000 9 = 00001001 10 = 00001010 11 = 00001011 12 = 00001100 16 = 00010000 여기서 이진수의 마지막 1의 위치를 확인하면 다음과 같다. 3= 왼쪽에서 첫번째 자리 (10진수의 값으로 1) 4= 왼쪽에서 3번째 자리 (10진수의 값으로 4) 5= 왼쪽에서 첫번째 자리(10진수의 값으로 1) ... 16 ..

[컴퓨팅사고력] 프레겔 강의 7개의 다리로 배우는 그래프

18세기 초 프러시아의 옛 지점 쾨니히베르크의 중심을 흐르는 프레겔 강에 7개의 다리가 놓여있었습니다. 당시 시민들 사이에서 같은 다리를 두 번 이상 지나지 않고 이들 7개의 다리 를 꼭 한 번씩 모두 건널 수 있을지 없을지에 대한 논의가 많았는데요 만일 한 번만 다리를 지나는 것이 가능하다면 어떤 방법으로 다리를 건너야만 할까? 라는 문제입니다. 여러분이라면 이 문제를 어떻게 말할 수 있을까요? 이 문제를 해결하기 위해 오일러라는 수학자는 이 문제를 쉽고 단순하게 표현하기 위해 다리와 섬들의 사이 관계를 평면상의 점과 선분으로 표현하였습니다. 이렇게 여러 관계를 점과 선분으로 표현한 모양을 그래프라고 합니다. 즉, 위 문제를 점과 선분으로 표기 하면 다음과 같은 그림이 된다. 이처럼 그래프는 문제를 해..

[자료구조]세그먼트트리(Segment Tree)

세그먼트 트리(Segment Tree)란? - 주어진 쿼리에 대해 빠르게 응답하기 위해 만들어진 자료구조 - 구간 중에 Max,Min,Sum(최대,최소,구간의 합) 등을 빠르게 갱신할 수 있는 자료구조 세그먼트 트리(Segment Tree) 구현 목적 배열의 데이터 수 : 10개 배열의 데이터 A[10] = {1,2,3,4,5,6,7,8,9,10} 목적 : 구간에 대한 합 예) 4번째 부터 6번째까지의(배열의 3번지부터 5번지까지의) 구간합은? 15 이러한 구간합을 구하는 가장 간단한 방법은 합을 미리 구해 놓고 1번째 부터 6번째의 합 21 에서 1번째 부터 3번째의 합 6을 빼면 15가 나온다. 1 2 3 4 5 6 7 8 9 10 1 3 6 10 15 21 28 36 45 55 하지만 각 데이터가 ..