전체 글
[프로그래머스-level1]3진법 뒤집기
c++ #include #include #include #include using namespace std; int solution(int n) { int answer = 0; string s = ""; while(n>2){ s += (n%3)+48; n = n/3; } s += n+48; reverse(s.begin(), s.end()); for(int i = 0; i
[프로그래머스-level1]모의고사
c++ #include #include #include using namespace std; vector solution(vector answers) { vector answer; int a[] = {1,2,3,4,5}; int b[] = {2,1,2,3,2,4,2,5}; int c[] = {3,3,1,1,2,2,4,4,5,5}; int score_a = 0; int score_b = 0; int score_c = 0; for(int i = 0; i
[프로그래머스-level1][1차]다트게임
2018 KAKAO BLIND RECRUITMENT 문제 #include #include using namespace std; int solution(string dartResult) { int answer = 0; //점수 총합 int num = 0; vector sum; //1,2,3회 점수기록 for(int i = 0; i='0'&&dartResult[i]
![[Node.js]EADDRINUSE 에러](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FnAVec%2FbtqSDtXo5i3%2FDItjFS2HyD0YWj0flLXSA1%2Fimg.png)
[Node.js]EADDRINUSE 에러
Error: listen EADDRINUSE: address already in use :::8080 라는 에러가 떴습니다. 원인 8080포트를 연 뒤 서버를 정상적으로 종료하지 않아서 이미 8080포트는 사용중이라는 에러입니다. 해결 맥 lsof -i TCP:포트번호 ex) lsof -i TCP:8081 kill -9 PID ex) kill -9 20394 예방 비정상적인 종료 시 발생합니다. node명령어로 서버를 실행했을 때 ctrl+C로 종료를 해주면 아래와 같이 정상적으로 종료됩니다.
![[알고리즘]그리디(Greedy, 탐욕법, 욕심쟁이기법)](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FP9Tta%2FbtqSEK4U8sJ%2FHBAztK3rYcsoab1mxdGaY1%2Fimg.png)
[알고리즘]그리디(Greedy, 탐욕법, 욕심쟁이기법)
그리디 알고리즘이란? 탐욕알고리즘, 욕심쟁이기법 이라고도 합니다. 매순간 최적이라고 생각하는 해를 선택해나가서 최종적으로 최적해에 도달하는 알고리즘이라고 할 수 있습니다. 그렇게 때문에 구한 해가 항상 최적임이 보장되지는 않아서 근삿값을 구하는 용도로 사용되기도 합니다. 탐욕법이 충족되기 위한 조건 앞의 선택이 이후의 선택에 영향을 주지않을 때 문제에 대한 최적해가 부분문제에 대해서도 역시 최적해일때 이렇게 2가지 조건을 만족할 때 그리디알고리즘이 잘 작용합니다. 이 조건들을 만족하지 못하면 최적해를 구하지 못하고 근삿값은 구할 수 있습니다. 개념자체만 봤을 때는 이해가 잘 안될 수 있으니 예제를 봅시다. 예제1 - 거스름돈(백준 5585번) 잔돈으로 500, 100, 50, 10, 5, 1엔이 있고 1..
![[알고리즘]퀵 정렬(Quick Sort)](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbKG9AB%2FbtqSsRwv0rT%2FfaVINtKxp3KRfjsGUpm4T1%2Fimg.png)
[알고리즘]퀵 정렬(Quick Sort)
퀵정렬이란? 퀵정렬은 이름그대로 빠른정렬, 즉 다른 정렬알고리즘에 비해 빠르다고 할 수 있습니다. 다른원소와의 비교를 통해 정렬이 이루어지므로 비교정렬에 속하고, 같은 수가 있는 경우 같은 수의 순서가 달라질 수 있어서 불안정 정렬에 속합니다. ex) 5(1), 5(2), 3, 2, 1 -> 1, 2, 3, 5(2), 51(1) 시간복잡도 최악의 경우 O(n^2) 평균 O(n log n) 알고리즘 임의의 수(pivot)를 고른다. 피벗을 기준으로 두 수를 비교하여 왼쪽에는 pivot보다 작은 수, 오른쪽에는 pivot보다 큰 수가 오도록 분할한다. 분할된 리스트 가운데에 피벗을 위치 시키고, 양쪽 리스트에 대해 재귀적으로 수행한다. 예제 가장 오른쪽에 있는 4를 pivot으로 정함. pivot을 제외하고..
![[알고리즘]깊이우선탐색(DFS),너비우선탐색(BFS)](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FNJsOS%2FbtqRAkggthB%2Fpk1nTk5ikjGFQXFNV4wVL1%2Fimg.png)
[알고리즘]깊이우선탐색(DFS),너비우선탐색(BFS)
그래프 탐색이란? 하나의 정점에서 시작하여 다른노드와 이어진 간선을 통해 다른 모든 정점들을 한번씩 방문하는 것입니다. 깊이우선탐색, 너비우선탐색은 그래프 탐색의 기본이라고 할 수 있습니다. 깊이우선탐색(Depth-First Search) 새로운 노드가 탐색될 때마다 그 노드로 이동하고, 다시 돌아와서 새로운 노드를 탐색하는 방법 시작노드에서 시작 인접한 다른노드 탐색 탐색한 노드에서 인접한 노드 중 탐색되지않은 노드 확인 인접한 노드 중 탐색되지 않은 노드가 없으면 다시 되돌아오면서 탐색되지않은 노드 확인 만약 탐색되지 않은 노드가 있다면 탐색 소스코드(c++) #include #include using namespace std; int N, E; //노드개수, 에지개수 int U, V; //연결되어있..
[알고리즘]완전탐색(Brute-force)
브루트포스(brute force)알고리즘, 완전탐색이란 가능한 경우를 모두 탐색해보는 방법입니다. 예시로는 해킹 시 모든 가능한 경우의 비밀번호를 다 넣어보는 것 등이 해당됩니다. 특정 알고리즘을 쓰게 하기 위해 시간제한이 짧은 경우엔 시간초과가 나지만, 때로는 완전탐색을 하는 방법이 간단하고 확실한 방법일 수 있습니다. 예제 (c++) 백준 2309-일곱 난쟁이 9명의 키가 입력으로 주어지는데 키 합이 100이 되는 7명의 키를 출력하는 문제입니다. #include #include #include using namespace std; int main() { vector v; int sum = 0; int one = 0; int two = 0; for (int i = 0; i < 9; i++) { int..
![[백준-16693]Pizza Deal(C++)](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FocBlx%2FbtqOpqvVfHX%2FZfzEb97Soh1r0GqJHl4zA0%2Fimg.png)
[백준-16693]Pizza Deal(C++)
소스코드 #include using namespace std; int main(){ double A1,P1,R1,P2; cin>>A1>>P1>>R1>>P2; if(A1*P2>R1*R1*3.1415926535*P1){ cout
[php][mysql]오류 : SQLSTATE[HY000] [1045] Access denied for user 'root'@'localhost' (using password: YES), SQLSTATE[HY000] [1049] Unknown database 'database'
php,mysql이용해서 웹개발 중인데 잘되는거 분명 확인했었는데 갑자기 DB접근시 SQLSTATE[HY000] [1045] Access denied for user 'root'@'localhost' (using password: YES) 라는 오류가 계속 생겼습니다... 이 오류는 비밀번호가 틀렸을 때 생기는 오류라고 할 수 있습니다. 어떤 글을보고 명령어를 통해 root계정의 비밀번호를 root로 바꾼 뒤 접속하니 이번엔 SQLSTATE[HY000] [1049] Unknown database 'database' 라는 오류로 바뀌었어요.... 분명 생성해놓은 DATABASE맞고, 터미널에서는 잘뜨는데 자꾸 unknown이라고 떠서 답답해하다가 일단 MacOS업데이트를 한 뒤, 아파치 서버 사용하고 있는..