출처 : 기계학습(Machine Learning, 머신러닝)은 즐겁다! Part 3 기계 학습(Machine Learning, 머신 러닝)은 즐겁다! Part 3 딥러닝(Deep Learning)과 컨볼루션 신경망(Convolutional Neural Network 또는 CNN) medium.com 딥러닝(Deep Learning)에 관한 의미는? 이번에는 딥러닝을 사용해 사진 속에서 객체를 인식하는 프로그램을 작성하는 법에 대해 알아봄 - Google Photos에서 사진 속에 포함된 객체를 기반으로 원하는 사진을 검색할 수 있는 법 - 이 웹툰은 3살짜리 아이는 새의 사진을 쉽게 인식할 수 있어도, 50년 이상 최고의 컴퓨터 과학자들은 컴퓨터로 객체를 인식하는 방법을 알아내기 위해 노력했으나 불가능했..
이 문제는 좀 여러번 틀렸는디 그 이유는 맨 뒤쪽 막대기보다 큰 막대기가 있을 때, 그 뒤의 막대기들은 안 보일거라는 예외를 생각을 못했던 것.. 난 바보였다 어쩐지 계속 틀리더라 // BOJ 17608번 막대기 #include using namespace std; int main() { int n; // 막대기 개수 cin >> n; int arr[n - 1]; // 막대기의 높이 담는 배열 for(int i = 0; i > arr[i]; } int result = 1; // 마지막 막대기는 무조건 보이기 때문에 1로 시작 int max = arr[n - 1]; // 마지막 막대기의 높이 넣음 for(int i = n - 1; i >= 0; i--){ // 맨 뒤부터 탐색 ..
만만한줄 알았는디.. 그냥 보고 코웃음 쳤는디ㅣ.... 오래걸린듯.. 왜냐면 reverse 함수에 대한 이해 부족 + getline 잘모름 등으로 인해 알고리즘 생각은 했으나 구현을 못하는.. 아니 해도 돌아가지 않는 상황에 마주했던 것..! 일단 내가 생각한 것은? 문장 전체가 뒤집혔지만.. 단어는 안뒤집힌.. 고런 느낌이니까 일단 reverse 함수로 전체를 뒤집고 토큰 단위로 뒤집으면 되겠다고 생각 토큰 하니까 자바 생각나네 자바로 풀었으면 더 빨리 풀렸을라나 어쨌든 문장을 입력받아야 했기에 나는 cin으로 n을 입력받고 getline으로 문자열을 입력받음 근데 제대로 안돌아감.. 만약 저 예제를 입력했다고 치면 footbar까지는 잘 들어가는데 all your base 문장이 안들어가는것..! 이..
처음 이 문제를 보고 생각난 것은 .. 원형 큐였다 그래서 구현하려고 생각해보았으나.. 사람들이 제거될때마다 빈 공간을 땡겨서 내려와야 하고?... 좀 까다로웠다는 것을 깨달아서 다른 방법을 찾았다 바로 C++의 SLT중 하나인 Queue를 이용하는 것 k번째 사람이 제거될 때는 pop을 하면 되지만 그렇지 않을 경우에는 맨 앞 원소(front)를 큐에 push한 뒤 pop을 하는 방법으로 큐가 empty가 될 때까지 반복하는 방법이다 // BOJ 1158번 : 요세푸스 문제 #include #include using namespace std; int main() { int n, k; // n: 사람 수 / k: k번째 사람 제거 cin >> n >> k; queue q; // q 생성 int count..
[baekjoon] 1655번 : 가운데를 말해요 [baekjoon] 1655번 : 가운데를 말해요 최대힙과 최소힙을 이용하면 쉽게 풀 수 있는 문제였당.. 값이 들어올 때마다 중간값을 출력하게 되면 시간 복잡도가 증가하고 이 문제는 시간 제한이 있기 때문에... 다른 방법이 필요했다 여기 kwonjeong.tistory.com - 이전에 풀었던 1655번에서 쓴 최대 힙을 사용하면 쉽게 풀 수 있는 문제였다 #include 헤더 파일을 작성해주고 priority_queue maxH; 를 작성해 최대 힙을 생성 // BOJ 11279번 : 최대 힙 #include #include using namespace std; int main() { ios_base::sync_with_stdio(false); //..
출처 : 기계학습(Machine Learning, 머신 러닝)은 즐겁다! Part 2 기계 학습(Machine Learning, 머신 러닝)은 즐겁다! Part 2 기계 학습을 사용해서 Super Mario Maker의 레벨 제작하기 medium.com Part 1에서는 기계 학습(Machine Learning)이 문제를 해결하기 위해 코드를 전혀 작성하지 않고도, 일반 알고리즘을 사용해 주어진 데이터에서 흥미로운 것을 알아낼 수 있다는 것 알아냄 이번 포스팅에서는 이러한 일반 알고리즘 중 하나로 사람들이 만든 것처럼 보이는 비디오 게임의 레벨을 제작하는 것을 볼 수 있음 우리는 신경망(neural network)를 만들고 기존의 슈퍼 마리오 레벨들을 통해서 새로운 슈퍼 마리오 레벨이 쉽게 만들어지는 것..
최대힙과 최소힙을 이용하면 쉽게 풀 수 있는 문제였당.. 값이 들어올 때마다 중간값을 출력하게 되면 시간 복잡도가 증가하고 이 문제는 시간 제한이 있기 때문에... 다른 방법이 필요했다 여기서 조건은 1. 최소 힙의 값들은 모두 최대 힙보다 큼 2. 최대 힙의 크기가 최소 힙의 크기보다 1 크거나 같도록 유지하면서 값을 넣어야 함 3. 값을 넣어준 후에 최대 힙과 최소 힙의 top 값을 비교해 최소 힙의 top보다 최대 힙의 top이 더 크다면 swap함 arr[] = { 1, 5, 2, 10, -99, 7, 5 } ← 배열이 이렇다면 [1 삽입] - maxH = 1 - minH → 출력 : 1 [5 삽입] - maxH = 1 - minH = 5 → 출력 : 1 [2 삽입] - maxH = 1 2 - m..
출처 : 기계학습(Machine Learning, 머신 러닝)은 즐겁다! Part 1 기계 학습(Machine Learning, 머신 러닝)은 즐겁다! Part 1 (원문 : Machine Learning is Fun! by Adam Geitgey) medium.com Machine Learning이란 무엇인가? - Machine Learning은 문제를 해결하기 위한 맞춤 코드(custom code)를 작성하지 않고도 일련의 데이터에 대해 무언가 흥미로운 것을 알려줄 수 있는 일반 알고리즘(generic algorithms)이 있다는 아이디어! - ex) 알고리즘의 종류가 classification일 때, 손으로 쓴 숫자를 인식하는 데 사용된 알고리즘과 동일한 classification 알고리즘을 코드..