일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- 완전탐색
- dfs
- 다이나믹 프로그래밍
- 삼성 SDS 대학생 알고리즘 특강
- BFS
- C++
- 동적 계획법
- 브루트포스
- BOJ
- 해커랭크
- 구현
- 맛집
- 백준
- 삼성 기출
- 백트래킹
- SWEA
- sw expert academy
- koitp
- 알고리즘
- Algorithm
- hackerrank
- 스택
- 에라토스테네스의 체
- 잠실
- dynamic programming
- 소수
- DP
- 그리디
- PS
- 시뮬레이션
- Today
- Total
목록분류 전체보기 (108)
펭로그
문제링크 : https://boj.kr/2960 시작 숫자부터 해당 숫자만큼의 배수로 탐색하여 답을 찾아가면 된다.단 한번도 특정 숫자로 나누어 떨어지지 않은 숫자는 모두 소수이고 그 소수의 배수들은 소수가 아닌 수가 된다. 소수를 구하는 알고리즘은 다음과 같다.처음으로 지워지는 숫자인 파란색은 소수이고 지워진 수는 소수의 N 배수이다. 배수가 되는 순간 소수가 아니기 때문에 당연히 파란색만 소수가 된다. 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 2의 배수 제거2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 3의 배수 제거2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 5의 배수 ..
문제링크 : https://boj.kr/2252 위상정렬을 이용한 문제로 자신을 가리키는 간선이 없는 경우 즉, indegree가 0인 정점을 찾는다.자신을 가리키는 간선(indegree)가 1개 이상 있다는 의미는 자신의 노드가 뒷쪽에 나와야 한다는 것을 의미한다.찾은 정점을 큐에 넣고 간선을 삭제한다.반복 자료 입력 순서가 중요하면 우선순위 큐를 사용하면 된다. 1234567891011121314151617181920212223242526272829303132333435363738394041424344// BOJ 2252 줄 세우기// DAG (Directed Acyclic Graph)// 순환을 가지지 않는 방향그래프// 위상정렬 (Toplogical Sort)#include #include #in..
문제링크 : https://boj.kr/1717 시간 제한을 신경써야 하는 문제로 iostream의 std::cin을 쓸 경우 시간 초과가 난다.scanf를 사용하거나 ios_base::sync_with_stdio(false); cin.tie(NULL); cout.tie(NULL); 를 같이 사용해야 한다.std::endl 도 마찬가지로 시간이 오래 걸리는 키워드로 "\n"을 써주는 편이 훨씬 빠르다고 한다. 그래프 문제로 처음엔 서로소 집합으로 자기 자신을 참조하는 형태로 노드를 표현한다. 연산이 될 때마다 루트노드를 업데이트 시킨다.int find(int node) { if (root[node] == node) return node; else return find(root[node]);}위의 경우 f..
문제링크 : https://www.acmicpc.net/problem/1966 2개의 배열을 선언하여 각각 동일하게 입력받은 후 한 배열은 우선순위 순서대로 정렬하여 순서대로 카운트한다.정렬된 배열은 우선 순위가 가장 큰 숫자가 맨 뒤로 가게되므로 배열을 탐색하는 도중에 해당 숫자가 발견되면 ptr을 줄여가면서 옮겨주는 방식이다.그리고 모든 배열을 다 탐색하였을 경우 다시 원점으로 돌아가야 하기 때문에 % num 모듈러 연산을 하였다. 1234567891011121314151617181920212223242526272829303132333435363738// BOJ 1966 프린터 큐#include using namespace std; int main() { freopen("../input.txt", "..
강의 링크 : https://www.edwith.org/deeplearningchoi* 본 포스팅은 위의 강의를 보고 요약 정리한 내용입니다. 1. R-CNN논문 : https://github.com/sjchoi86/dl_tutorials_10weeks/blob/master/papers/Rich%20feature%20hierarchies%20for%20accurate%20object%20detection%20and%20semantic%20segmentation.pdf- CNN에서 fully connected layer 때문에 입력 이미지가 항상 고정된 사이즈를 필요로 하는 문제를 해결하기 위해 R-CNN에서는 여러 다른 사이즈를 갖는 bounding box를 샘플로 사용- 딥러닝과 상관 없이 물체가 있을..
전남대 후문에 위치한 술집 '카쑥'에 다녀왔다.지하에 위치하고 있어 사람들이 잘 모르는 곳이기도 하다.카페처럼 내부가 잘 꾸며져있다. 카쑥의 메뉴판....!!제일 비싼 메뉴가 무려 6천원이다. 혜자돋는... ㄷㄷ 팝콘은 마음껏 퍼가면 된다. 그치만 팝콘 안먹어도 먹을게 너무 많아서 팝콘엔 손이 잘 안간다. 기본으로 나옴 기본적으로 과일도 준다. 렬루 혜자 술집 때에 따라 수박, 복숭아, 자두, 파인애플, 사과 등등 막 퍼준다 사장님이.. ㄷㄷㄷ 이 가게에서 제일 비싼 군만두 + 찐만두맛있음 ㅇㅇ 육포 세트 4,500원 ㄷㄷ 이건 다른날 가서 찍은 사진인데. 이게 기본 상차림이다. 아직 안주도 나오기 전... ㄷㄷㄷㄷㄷㄷㄷㄷ이때는 메뉴판 바꾸기 이전이었는데 안주 7천원짜리인가 뭔진 기억 안나는데그거 시켜놓..
문제링크 : https://www.acmicpc.net/problem/9012 1. 열린 괄호의 갯수 == 닫힌 괄호의 갯수 가 성립해야한다.2. ( 가 나올때마다 카운트를 증가시키고 ) 이 나올때마다 카운트를 감소시켜 최종 카운트가 0이 되어야 한다.3. 닫힌 괄호가 먼저 나오면 안된다. ())(() 라던지 ))()(( 의 상황이 나오면 안된다는 뜻 (20~21번째 줄 조건시 break) 심화문제로 BOJ 10799번 쇠막대기 문제가 있다. 123456789101112131415161718192021222324252627// BOJ 9012 괄호#include using namespace std; int main() { // freopen("../input.txt", "r", stdin); int T;..
1. JetBrains 소개 C/C++ 초급 개발자라면 보통 비주얼 스튜디오를 이용하여 개발하는 것이 보편적이며 입문자들의 대부분은 비주얼 스튜디오로 시작하는 편이다. 학원이나 학교에서 그렇게 가르쳐주기 때문이다. 그리고 한글이니까..? 게다가 Community 버전은 무료니까...!!! 비주얼 스튜디오는 정말 편리하고 빠른 개발환경을 제공한다. 프로젝트를 생성하고 이것저것 환경설정을 따로 해줄 필요가 없어 간편하다.makefile을 만들 필요도 없고 그냥 솔루션 폴더에 cpp 파일과 헤더 파일을 넣고 필요하면 외부 라이브러리를 추가하기만하면 간단한 설정만으로도 프로젝트 환경을 구축할 수 있다. [백준 온라인 저지 사이트에서 꽤나 빈번하게 발생하는 컴파일 에러] 하지만, 최근 알고리즘 공부를 하면서 비주..
문제링크 : https://koitp.org/problem/SDS_TEST_CALCULATOR [삼성 SDS 대학생 알고리즘 특강 사전 테스트 B Type 3번 문제]시간초과로 실패했던 문제이다. 1. 일단 정렬한다.2. 앞의 두 숫자(최소값)을 더하고 더한 숫자를 뒷쪽에 끼워놓는다.3. 반복 삭제와 삽입이 빈번하게 일어나기 때문에 STL vector를 사용하면 시간이 매우 오래걸리게 된다.또한, 매 loop 실행시마다 삽입의 적절한 위치를 찾기 위해 for문을 돌리기 때문에 O(N^2)이 되겠다.답은 맞은듯하나 시간초과로 실패하였다. 우선순위 큐를 사용하면 될 것 같기도 한데 아직 이것도 모르겠다.일반 배열과 vector를 제외한 다른 자료구조에 대한 학습이 부족하여 여기까지가 한계인듯하다.추후에 자료..
문제링크 : https://koitp.org/problem/SDS_TEST_BIGINT [삼성 SDS 대학생 알고리즘 특강 사전 테스트 B Type 2번 문제]int형을 사용하면 시간 초과가 나는 문제였다. 입력의 조건이 -1,000,000 ~ 1,000,000 이기 때문에 잘 확인해야 한다.long int나 long, long long 어느 것으로 해도 상관없다.다만, Windows 환경에선 long int와 long 형은 64비트 컴파일러(VS 기준) 4바이트로 인식하기 때문에 long long을 써야한다.UNIX 64비트에선 long int와 long을 8바이트로 인식한다.KOITP를 비롯한 대부분이 gcc 컴파일러를 사용하기 때문에 익숙해질 필요가 있다. 1. 맨 첫 입력은 고정이다.2. 그 다음..