본문 바로가기

<알고리즘 문제풀이&연습>/[C++] 백준68

[백준 2908] 상수 안녕하세요. BlockDMask 입니다.이번 문제는 170809 일자 채우기 문제입니다. 0. 제목백준 2908 상수BOJ 2908 상수1. 문제 설명 자릿수가 세 자리인 숫자가 입력으로 들어온다. 두 수를 거꾸로 읽었을때 큰 수를 출력하면 된다. 두수는 같지 않은 세 자리 수이며, 0 이 포함 되어 있지 않다. 2. 풀이 과정 자릿수에 관한 문제이므로 1의 자리는 10으로 나누었을때 나머지 10의 자리는 100으로 나누었을때 나머지 100의 자리는 1000으로 나누었을 때 나머지 이다. 이것을 이용하여 똑바로된 수의 1의 자리를 변경될 수의 100의 자리로. 옮기는 방식으로 하면된다. 똑바로 된 수를 10으로 나누어서 두자리 수로 줄이고 그것의 1의 자리를 변경될 수의 10의 자리로. 두자리 수인 똑바.. 2017. 9. 17.
[백준 2675] 문자열 반복 안녕하세요. BlockDMask 입니다.오늘 문제는 170808 일자 채우기 문제 입니다.0. 문제BOJ 2675 문자열 반복백준 2675 문자열 반복1. 문제설명 문자열 s를 입력 받으면 각각의 문자를 r번 반복해서 새 문자열 t 를 만든 후 출력하는 프로그램을 만드시오. 3 ABC 이면 AAABBBCCC 를 출력하면 됩니다. 문자열 s 는 QR Code "alphanumeric" 문자인 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ$%*+_./: 입니다 첫번 째 줄엔 T(1 2017. 9. 17.
[백준 1912] 연속합 (수열) 안녕하세요. BlockDMask 입니다.상큼하게 월요일 문제 풀어봤습니다.0. 문제백준 1912 연속합BOJ 1912 연속합1. 문제설명 N개의 수열이 주어집니다. 이중 연속된 몇개의 숫자를 선택해서 구할 수 있는 합 중 가장 큰 합을 구하려고 합니다. 선택할 수는 적어도 하나 이상 이어야합니다. N의 범위는 (1 2017. 9. 12.
[백준 11004] K번째 수 안녕하세요. BlockDMask 입니다.0. 문제백준 11004BOJ 110041. 문제설명 수 n 개 가 입력되고 그중 k 번째 수를 출력.(1 2017. 9. 8.
[백준 10845] 큐 (C, C++ Queue) 안녕하세요.BlockDMask 입니다.오늘은 영국에 온지 이틀째 되는날입니다. 제가 원하는 데로 저는 영국 런던 리젠트 공원 벤치에 앉아서 문제를 풀어보았습니다.확실히 집중이 안되서; 쉬운 자료구조 문제를 풀어봤습니다.0. 제목백준 10845 큐BOJ 10845 큐1. 문제설명 큐를 구현하고각 명령어에 맞게 출력하는 문제입니다. push X : 정수 X를 큐에 삽입pop : 큐의 앞에 있는 정수를 없애고, 그 수를 출력합니다. 없는 경우 -1 출력.size : 큐에 들어있는 원소의 개수 출력.empty : 큐가 비어있으면 1, 그렇지 않으면 0 을 출력.front : 큐의 가장 앞에있는 원소 출력, 원소가 없는 경우에는 -1 출력.back : 큐의 가장 뒤에있는 원소 출력, 원소가 없는 경우에는 -1 출.. 2017. 8. 21.
[백준 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 형 배열을 선언해서 구했습니다. 여러개의 변수를 이용하여 구현한 반복문 기반 피보나.. 2017. 8. 17.
[백준 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개의.. 2017. 8. 11.
[백준 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], .. 2017. 8. 3.
[백준 1181] 단어정렬 (vector, array) 안녕하세요!! BlockDMask 입니다.오늘의 문제 포스팅 하겠습니다.0. 제목백준 1181 단어정렬BOJ 1181 단어정렬1. 문제 설명 N개의 단어가 들어오면 1) 길이가 짧은순2) 길이가 같으면 사전순으로 정렬하여 출력하는 문제입니다.(단어는 소문자만 들어옵니다)(중복 제거 해야합니다.) 2. 풀이 과정 처음에는 vector container를 이용하여서,sort 알고리즘을 이용하여 정렬을하고unique 알고리즘을 이용하여 중복을 제거한 후 iterator(반복자)를 이용하여 출력하는것으로 문제를 풀었습니다. 그런데 다른사람과 비교했을때, 걸린 시간과 메모리량이 큰 것을 보고.어떻게 줄인걸까 생각을 해봤습니다. 그래서.총 4가지 방법으로 문제를 풀어봤습니다.T1) 방식이 제가 처음에 문제를 푼 방.. 2017. 8. 2.
[백준 1475] 방 번호 안녕하세요. BlockDMask 입니다.이번 포스트는 7월 20일짜 커버입니다.0. 제목 백준 1475 방 번호BOJ 1475 방 번호1. 문제설명 숫자가 1,000,000보다 작은 자연수가 입력이 되면,그것을 인식하기위한0~9가지의 열가지 숫자가 있는 플라스틱 숫자 셋트가 몇개가 필요한지.9는 뒤집어서 6으로 사용 가능하다. 2. 풀이과정 총 3가지 방법으로 풀어봤습니다. T1) 입력을 int 타입의 변수로 받고 배열을 이용하여 계산 한 경우 T2) 입력을 int 타입의 변수로 받고 STL map 컨테이너를 이용하여 계산 한 경우 T3) 입력을 string 타입으로 받고 계산 한 경우 3. 코드 T1) 입력을 int 타입의 변수로 받고 배열을 이용하여 계산 한 경우123456789101112131415.. 2017. 8. 1.