본문 바로가기

Algorithm/개념정리3

[개념 정리]10진수를 2진수로 변환하는 방법 정리 10진수를 2진수로 변환하는 방법을 3가지로 정리해보았다. 2로 나누었을 때의 나머지를 이용해서 구하기. shift연산자 이용하기. STL [bitset] 사용하기. 방법1 > 2로 나누었을 때의 나머지를 이용해서 구하기. ▶ stack을 사용해서 n이 살아있을 때까지 2로 나누어서 나머지를 넣었다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 #include #include using namespace std; int main() { int n; cin >> n; stack s; while (n) { if (n % 2 == 1) { s.push(1); } else { s.push(0); } n /= 2; } while (!s.empty()).. 2022. 10. 27.
해시(hash)정리 해시에 대해서 이해하기 쉽게 정리된 글이다. 참고하자~ https://luv-n-interest.tistory.com/1024 Hash, 해시 테이블 , 자료구조 [CPP] 앞서 나온 자료구조보다 해시 테이블은 비교적 빠른 탐색 속도를 가지고 있다. 어떻게 그렇게 될 수 있는지 알아보고 어떤 자료를 표현하기에 적합한지 생각해보자 또한 여기선 lookup 이라는 용 luv-n-interest.tistory.com https://luv-n-interest.tistory.com/963 STL 맵, map 사용법 [C++] 맵이 뭔가 싶지만 C++의 dictionary를 맵이라 부른다. 즉, key ,value 짝의 자료구조를 맵이라 부른다. 그래서 선언할 때도 key자료형, value자료형 같이 선언한다. m.. 2022. 10. 5.
[개념정리] 조합(Combination) 직접 구현해보기 아래의 [백준] 14052번 문제를 풀다가 개념을 정리해보았다. https://www.acmicpc.net/problem/14502 14502번: 연구소 인체에 치명적인 바이러스를 연구하던 연구소에서 바이러스가 유출되었다. 다행히 바이러스는 아직 퍼지지 않았고, 바이러스의 확산을 막기 위해서 연구소에 벽을 세우려고 한다. 연구소는 크 www.acmicpc.net 주어진 숫자들에 대해서 조합을 하고, 조합된 숫자들에 대해서 문제를 풀어나가야 하는 상황에서 STL을 사용해서 문제를 풀자니 코드 재활용이 안되고, 과정이 머릿속에서 그려지지 않을 것 같아서 c++코드로 조합(Combination)을 구현해보았다. 문제 상황 (1,4), (5,2), (9,4), (8,3) ... 와 같이 두개의 숫자로 이루어진 .. 2022. 9. 6.