[프로그래머스] 핸드폰번호 가리기 level 1 // 핸드폰 번호 가리기 #include #include using namespace std; string solution(string phone_number) { string str = phone_number; for (int i = 0; i < str.length() - 4; i++) { str[i] = '*'; } return str; } int main() { string a("01033334444"); cout [알고리즘] 문제풀이 연습 2019.11.03
[C++] map 컨테이너 // map 컨테이너 /* - 연관 컨테이너 중 하나 - 노드 기반으로 이루어져 있는 '균형 이진 트리 구조' - Map은 Key와 value로 이뤄져있으며 pair 객체 형태로 저장됨 - Unique Key : key는 고유한 값이므로 중복이 불가능 - *단, multimap은 중복 key가 가능 - Ordered : map도 set과 마찬가지로 삽입이 되면서 자동 정렬됨 - *default 는 오름차순 - Allocater-aware: map container는 저장공간의 필요에 따라 allocater객체 사용 - = 동적할당 한다는 말 */ #include #include #include using namespace std; int main() { //생성 map m1; map m2; //map에 .. [알고리즘] 문제풀이 연습 2019.11.03
[c++] vector 컨테이너 사용법 // Vector 컨테이너의 모든 것 // C++ STL의 Sequence Container 중 자주쓰는 vector #include #include using namespace std; int main() { vector v; //벡터 v 선언 // 00000 출력 vector v2(5); //0으로 초기화된 5개의 원소를 가진 벡터 선언 // 22222 출력 vector v3(5, 2); //2로 초기화된 5개의 원소를 가진 벡터 생성 //v2를 v1복사해 생성 vector v4(v); /* vector의 멤버 함수 */ //참조한다는 것은 해당 데이터를 리턴한다는 뜻 //22222 출력 (5의 원소를 2의 값으로 할당) v.assign(5, 2); // idx번째 원소를 참조 // 2번째 원소참조하.. [알고리즘] 문제풀이 연습 2019.11.02
[C++] string 클래스 정리, 문자열 다루기 #include #include using namespace std; int main() { string str("Hello World"); //생성 1 string str1; str1 = "Hello Wolrd"; //생성2 string str2(str1); //생성 3 /* string 인자 접근, access 관련 */ cout [알고리즘] 문제풀이 연습 2019.11.02
[프로그래머스] 최댓값 구하기 - SQL 답 1) SELECT MAX(DATETIME) as '시간' FROM ANIMAL_INS; 답 2) SELECT datetime from animal_ins order by datetime desc limit 1; [알고리즘] 문제풀이 연습 2019.10.30
[WEB] HTTP / HTTP Cache / CloudFront https://opentutorials.org/module/3621/21673 HTTP 소개 - WEB2 - HTTP 수업소개 HTTP가 무엇인지를 살펴봅니다. 크롬 개발자 도구 내의 네트워트 기능도 살짝 살펴봅니다. 강의 opentutorials.org https://opentutorials.org/module/3830 HTTP Cache 수업소개 이 수업은 웹의 성능을 향상시키는 핵심 메커니즘은 HTTP Cache 를 다루는 수업입니다. 수업대상 이 수업은 HTTP에 대한 기본적인 이해를 요구합니다. HTTP를 모르시는 분은 HTTP 수업을 먼저 보시고 이 수업을 볼 것을 권해드립니다. 수업을 보는 다른 방법 youtube 재생목록 수업에 참여조건 지식들간의 연관관계는 아래 지식지도를 통해서 볼 수 .. [React] Front-End 2019.09.01
[알골90제] 83번 - 복면산 send+more=money : MS인터뷰 문제 0번째 배열은 알파벳 D 1번째 배열은 알파벳 E . . 로 대응되도록 만듬 a배열에 순열을 만들 것이다. [알고리즘] 문제풀이 연습 2019.08.23
[알골90제] 81번 - 벨만포드 알고리즘(다시풀기) 최소 비용으로 출발정점에서 도착정점까지 가는 경로를 찾는 것 - 간선을 1번만에 갈 수 있다 - 간선을 2번만에 갈 수 있다 - 간선을 3번만에 갈 수 있다 . . . 정점이 5개면 간선을 5개를 썻다면,,? 2번 정점을 2개 들린 회로가 발생한다는 것 싸이클이 있다는 것은 가중치가 음수인 값이 있다는것 => 음의 싸이클이 존재하지 않는 한 벨만포드 사용가능 => 노드가 5개라면 간선 5개를 택할 수 없음 정점이 n개면 간선을 n-1개 사용하는 것이 가장 긴 경로다 [알고리즘] 문제풀이 연습 2019.08.23
[알골90제] 80번 - 다익스트라 알고리즘 1. 노드 배열을 만들어서 1번 정점은 0으로 초기화하고 나머지는 무한대값(아주큰값)으로 최대한 해놓음 2. 돌면서 최솟값을 찾음 3. 1번정점 체크 4. 1번 정점에서 갈 수 있는 방향으로 다 간다. 5. dist 배열을 relax해준다. => 값이 더 좋으면 바꿔준다. 6. dist[2] 를 보면 무한대로 되어 있기 때문에 가중치값 12는 좋은 값이기에 바꿔준다 dist[2] = 12 7. 1번에서 3으로 갈 수 있다. => dist[3] = 4 로 바꿔준다. 8. 1번은 한번 사용했기 때문에 다시 사용 못함 9. 2, 3번 중 작은 값인 3번이 선택됨 => dist[3]은 체크 걸어둠. 그리고 이제 dist[3] 인 3번 정점에서 다시 감 10 .1에서 3번 정점으로 가는 최솟값인 4는 선택되었기에.. [알고리즘] 문제풀이 연습 2019.08.22
[알골90제] 78/79번 - 원더랜드(Kruscal MST 알고리즘 / Union&Find 자료구조, priority queue) 1. 먼저 간선을 가중치 값으로 오름차순으로 정렬한다. 2. 간선을 선택해가면서 싸이클이 되어버리면 선택하면 안된다! 아무리 간선 가중치 값이 적다고 해도! 3. 2번 정점과 9번 정점은 최소비용신장트리의 원소로 들어옴 => 이때 Union & Find로 집합을 만들어서 연결시켜버린다. 4. 2와 3을 연결하는 가중치값 10 인 간선 => 이 간선을 선택하느냐 마느냐에서 2번 정점을 find로 하고, find 3을 하여 둘이 서로 다른 집합이면 연결한다. 2와 3도 Union 한다. 5. 이런식으로 계속 간선값을 누적한다. 6. 이미 2번과 8번 정점은 연결되어 있는 상태이기 때문에 선택하지 않는다. => 회로가 되면 안된다! 싸이클을 피해라! 7. find 8 find 9는 이미 트리의 집합의 원소로 .. [알고리즘] 문제풀이 연습 2019.08.22