코테준비 (11) 썸네일형 리스트형 [SQL] 프로그래머스/재구매가 일어난 상품과 회원 리스트 구하기 Q. ONLINE_SALE 테이블에서 동일한 회원이 동일한 상품을 재구매한 데이터를 구하여, 재구매한 회원 ID와 재구매한 상품 ID를 출력하는 SQL문을 작성해주세요. 결과는 회원 ID를 기준으로 오름차순 정렬해주시고 회원 ID가 같다면 상품 ID를 기준으로 내림차순 정렬해주세요. SELECT USER_ID, PRODUCT_IDFROM ONLINE_SALEGROUP BY USER_ID, PRODUCT_IDHAVING COUNT(PRODUCT_ID)>=2ORDER BY USER_ID, PRODUCT_ID DESC 조건문 having과 wherehaving은 group by와 함께 사용, 그룹화해서 조건 적용하고 싶을 때where은 전체 컬럼에 대해 적용GROUP BY USER_ID, PRODUCT_ID .. [SQL] 프로그래머스/서울에 위치한 식당 목록 Q. REST_INFO와 REST_REVIEW 테이블에서 서울에 위치한 식당들의 식당 ID, 식당 이름, 음식 종류, 즐겨찾기수, 주소, 리뷰 평균 점수를 조회하는 SQL문을 작성해주세요. 이때 리뷰 평균점수는 소수점 세 번째 자리에서 반올림 해주시고 결과는 평균점수를 기준으로 내림차순 정렬해주시고, 평균점수가 같다면 즐겨찾기수를 기준으로 내림차순 정렬해주세요. SELECT I.REST_ID, I.REST_NAME, I.FOOD_TYPE, I.FAVORITES, I.ADDRESS, ROUND(AVG(R.REVIEW_SCORE),2) AS SCOREFROM REST_INFO AS IJOIN REST_REVIEW AS RON I.REST_ID = R.REST_IDWHERE I.A.. LCS(Longest Common Substring) 알고리즘 두 문자열에서 최장 공통 부분문자열(연속) 찾기 DP(Dynamic Programming) 이용int dp[n][m];int a[n];int b[m];if(i==0 && j==0) dp[i][j] = 0;else if(a[i] == b[j]) dp[i][j] = dp[i-1][j-1]+1;else dp[i][j] = 0; dp배열의 최댓값 => 최장 공통 부분문자열 길이 [알고리즘] 위상정렬 위상 정렬, topological sort순서가 정해져있는 작업을 차례로 수행해야 할 때 사용DAG(Directed Acyclic Graph)에만 적용 가능 / 사이클이 발생하지 않는 방향 그래프시간 복잡도: O(V+E)/정점 개수 + 간선 개수 예시> 대학의 선수과목(prerequisite)만약 특정 수강과목에 선수과목이 있다면 그 선수 과목부터 수강해야 하므로, 특정 과목들을 수강해야 할 때 위상 정렬을 통해 올바른 수강 순서를 찾아낼 수 있다. 이와 같이 선후 관계가 정의된 그래프 구조 상에서 선후 관계에 따라 정렬하기 위해 위상 정렬을 이용할 수 있다. Queue로 구현- 깊이가 0이 정점 큐에 삽입- 큐에서 정점 꺼내서 연결된 모든 간선 제거- 간선 제거하면서 방문한 정점은 깊이 1씩 감소-.. [softeer/c++] 좌석 관리/string 비교 string 비교함수 compare#include string s;if(s.compare("string") == 0) cout compare함수는 두 문자열이 같으면 0, 다르면 -1 반환 틀렸을 때- sqrt 함수 사용한 safety 변수를 double로 받아야 하는데 int로 했었음- 메모리 해제를 안 했음 #include #include #include #include #include #include using namespace std;int N, M;int **seat; //N+1*M+1 배열double cal_safety(int x, int y){ //(x,y) 좌석의 안전도 구하기 double min = 40.0; for(int i=1; i max_safety(){ //안전.. [그래프] 백준 1389 c++ 케빈 베이컨의 6단계 법칙 오 어려움 예전에 풀려고 했다가 못 풀었던 거 같음 브루트포스가 아닐까 하는 생각 ... for(int i=1; i> M; int min_dist[101][101] = {0, }; vector con; vector v; con.push_back(v); // 친구 배열 채워주기 for(int i=0; i> r >> c; arr[r][c] = 1; arr[c][r] = 1; } for(int i=1; i [그래프] 백준 1260 c++ / Nested Functions, 정적배열과 동적배열, memset .. 몇 가지 궁금점 그래프 탐색 결과를 출력해야 하는데 문득 main 함수 내에 dfs, bfs 함수를 정의할 수 있을지 궁금해졌음 -> 바보같은 생각 걍 main 밖에 함수 정의하고 cout 하면 됨 그래도 중첨 함수 선언에 대해 알아보자 Nested Functions, 중첩 함수 Nested functions이란 다른 함수의 내부에 정의된 함수이다. nested function 예시) foo (double a, double b) { double square (double z) { return z * z; } return square (a) + square (b); } GNU C 확장에선 지원되지만 GNU C++에서는 지원되지 않는다고. 참고: https://gcc.gnu.org/onlinedocs/gcc.. [브루트포스] 백준 1107 C++ / 또 무수한 틀림과 하 또 막혔다 또 #include #include #include using namespace std; int N, M; int *broken; int calMin(int num) { // 1. 100에서 +, -해서 움직이는 횟수 int fromHundred = abs(100-num); //2. 앞자릿수부터 고장난 숫자 있는지 검사 string cp = to_string(num); for(int i=0; i N >> M; broken = new int[M]; for(int i=0; i> broken[i]; // N이 100이면 0 출력 if(N == 100) { cout 이전 1 2 다음 목록 더보기