반응형

전체보기 410

[백준 2747] 피보나치 수

안녕하세요. BlockDMask 입니다.0. 제목백준 2747 피보나치 수BOJ 2747 피보나치 수 1. 문제설명 피보나치의 수 n=0 일때 0n=1 일때 1이다. 피보나치의 수를 11개 까지 나열해 보면0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55 이때 45보다 적은 정수 NUM이 들어오면n 이 NUM 일때 피보나치 수를 구하여라. 2. 풀이과정 recursive function(재귀함수)로 구현을 했는데역시 시간초과가 나서 iterative (반복문)을 이용하여 피보나치 수를 구현했습니다. 처음에는 반복문으로 구현한 피보나치 함수에서 변수를 여러개 선언해서 구현을 했는데코드가 지저분해 보여서 int 형 배열을 선언해서 구했습니다. 여러개의 변수를 이용하여 구현한 반복문 기반 피보나..

[백준 2108] 통계학 (최빈값, 산술평균, 중앙값, 범위)

안녕하세요. BlockDMask 입니다. 오늘의 문제는 STL에 vector 를 이용해서 풀었습니다. vector에 pair 클래스도 넣고 풀어봤으니, vector 예제 느낌으로 봐주셔도 좋을 듯 합니다. 또한, sort 알고리즘을 사용할때 조건자를 줘서 기준을 바꿔 sort 하는 것도 나옵니다. sort(st.begin(), st.end(), comp) 도 유심히 봐주시면 좋을 듯 합니다.0. 제목백준 2108 통계학BOJ 2108 통계학1. 문제설명 n이 홀수일때 산술평균, 중앙값, 최빈값, 범위 를 구하여 각각 한 줄씩 출력하라. n개의 숫자들의 합을 n으로 나눈값을 말한다. (소숫점 이하 첫째자리에서 반올림한다.) n개의 숫자들을 증가하는 순서대로 정렬했을때, 중앙에 위치하는 값을 말한다. n개의..

[C언어/C++] 올림, 내림, 반올림 (floor, ceil) 함수

안녕하세요 BlockDMask 입니다. 오늘은 올림, 내림 을 할수있는 ceil, floor 함수에 대해서 알아보고. floor 함수를 통해서 반올림을 하는 것 까지 보도록 하겠습니다. C의 함수들이 C++에 호환이 되어서 C에서 쓸때와 C++에서 쓸때의 차이점은 헤더파일, 메서드 오버로딩 (메서드, 함수 이름이 같아도 인자가 다르면 선언이 되는것) 이 있습니다. 오버로딩은 C++에서만 지원합니다. 글 순서는 헤더파일 소개 -> 함수(메소드)가 선언된 원형과 사용법 -> 실제 예시 -> + 알파 순으로 가겠습니다. 그럼 시작하겠습니다. (C++ 반올림(round)함수 포스팅 [바로가기]) (C++ 버림(trunc)함수 포스팅 [바로가기]) 0. 헤더파일(header) [C 언어] : [C++] : 1. ..

[맥OS] 맥북 유용한 단축키 모음

안녕하세요. BlockDMask 입니다.아무튼 오늘은 Mac 단축키에 대해 정리 해보려 합니다.실제 제가 사용하는 단축키 입니다다음 포스트는 "트랙패드 편하게 쓰기" 편을 포스팅 해보겠습니다. [맥북 단축키 정리](Mac Shortcut key)서버 접속 (Connect to Server) Command + K유틸리티 폴더 (Utilities) Command + Shift + U 폴더경로로 바로가기 (Go to Folder) Command + Shift + G홈 폴더 열기 Command + Shift + H데스크톱 (Desktop) = 바탕화면 Command + Shift + D프로세스 종료 command + W프로그램 종료 command + Q새 탭 command + T파일 폴더 지우기 선택 후 => ..

[CodeGround] 하노이 타워(Hanoi Tower)

안녕하세요. BlockDMask 입니다.오늘은 codeground 두번째 문제 '하노이 타워'를 풀어보았습니다.0. 제목코드그라운드 하노이 타워CodeGround Hanoi tower1. 문제설명세개의 타워가 있고첫번째 타워에 서로 다른 접시 N개가 쌓여있습니다. 첫번째 타워에 놓여있는 모든 접시를 세번째 타워로 옮기고자 할때, 접시를 옮기는 순서를 출력하라.접시는 한 번에 하나만 옮길 수 있고, 한 타워의 맨 위 접시를 다른 타워의 맨 꼭대기에 올릴 수 있다.큰접시 위에 작은접시가 올라가야만 한다. (작은 접시위에 큰접시 올라오는것 불가능)2. 풀이과정알고리즘 수업을 들었던 사람은 재귀 함수 파트에서 꼭 한번은 배웠던 하노이 타워(Hanoi Tower) 문제입니다.유명한 만큼 설명은 생략하겠습니다. 3..

삽입정렬 (Insertion Sort) 이론과 코드

안녕하세요. BlockDMask 입니다. 오늘은 간단한 정렬 알고리즘 중에 삽입 정렬 (Insertion Sort) 에 대해서 알아보겠습니다. 이상한 곳이 있으면, 댓글로 말해주시기 바라겠습니다.댓글을 보고 고치도록하겠습니다. 따끔한 지적 부탁드리겠습니다. 0. 원리Insertion Sort 는 말 그대로 '삽입' 꽂아 넣는 정렬입니다. 자신보다 앞의 원소가 큰지 작은지 비교를 하여서 자신의 위치를 찾아서 '삽입' 하는 정렬입니다. 앞의 원소를 비교해야 하기 때문에 arr[1]~arr[n] 까지 진행합니다. (두번째 원소인 arr[1] 부터 시작.) 삽입을 하면 데이터가 하나씩 밀려야 하기 때문에 배열이 길어질수록 효율이 떨어집니다. 그림을 통해서 과정을 살펴 보겠습니다. (오름차순을 기본으로 하겠습니다..

[CodeGround] 극단적인 수

안녕하세요. BlockDMask 입니다.오늘은 새로운 알고리즘 문제 사이트 코드 그라운드(codeground)를 발견하여서 여기 문제를 풀어 보았습니다. 0. 제목코드그라운드 극단적인 수.codeground 극단적인 수.1. 문제설명4와 7로만 이루어진 숫자셋이 있다고 생각.K가 들어오면 K 번째 숫자를 출력.첫쨰줄에 1 4,7 법칙으로 바꾸어 주는 겁니다.2의 배수이면 7이 되고, 그렇지 않으면 4가 됩니다.여기서 중요한게 있습니다.표를 보게되면2번째 표를 보면1, 3, 7 일때 4, 44, 444 가 됩니다. (7 - 1 ) /2 = 3 (3 - 1) /2 = 1 이런식으로 단위가 증가하는 것을 볼수 있으며10진수에서 2진수로 변환하는 것 처럼 나머지를 이용하여 각 자리의 숫자를 구하고 역순으로 출력..

[C++] priority_queue container 정리 및 사용법

안녕하세요 BlockDMask 입니다.오늘은 Container Adapter (stack, queue, priority_queue) 중 마지막 priority_queue 에 대해 정리해보겠습니다. 0. priority_queue container우선순위 큐를 구현한 것 입니다. priority_queue container 는 vector, deque container 와 붙어서 사용이 가능합니다. (list 불가능) 내부적으로는 에 있는 힙 관련 함수들을 사용하여 구현되어있습니다. 내부구조 default 는 vector container 기반으로 설정되어 있습니다. 정렬기준 default는 내림차순(less) 기반으로 설정 되어있습니다.1. priority_queue container 사용법 헤더파일 안..

[백준 1929] 소수 구하기 (에라토스테네스의 체)

안녕하세요. BlockDMask 입니다.오늘의 문제를 포스팅 해보겠습니다. 클라이밍 하고와서 손이 부들부들 떨리는데;; 24시가 되기전에 올려야하니, 샤워도 안하고 폭풍 포스팅을 해보겠습니다.소수를 구하는 문제인데;; 에라토스테네스의 체 (소수 구하는 방법) 방법을 이용하여 풀어야하는 문제입니다.0. 제목백준 1929 소수 구하기BOJ 1929 소수 구하기1. 문제설명 1 그러면 2의 배수는 소수가 아니다. -> 지운다. [1], [2], [3], [4], [5], [6], [7], [8], [9], [10], [11], [12], [13], [14], [15], [16], [17], [18], [19], [20] 3) [3]는 소수이다. -> 그러면 3의 배수는 소수가 아니다. -> 지운다. [1], ..

[C++] queue container 정리 및 사용법

안녕하세요! BlockDMask 입니다.오늘은 Container Adapter (stack, queue, priority queue)중 두번째인 queue container adapter에 대해 정리해보겠습니다. 0. queue containerFIFO (First in, First out) 방식으로 동작 됩니다. queue container는 deque와 list container 에 붙어서 사용 가능합니다. (vector container 불가능.) vector container가 불가능한 이유 : queue 자료구조 특성상 뒤에서 삽입하고 앞에서 빼야하는데(FIFO) vector는 앞에서 빼는 동작을 지원해 주지 않기 때문입니다. 내부적으로 deque, list container 로 구현이 되어있습..

반응형