https://github.com/encrypted-def/basic-algo-lecture
encrypted-def/basic-algo-lecture
바킹독의 실전 알고리즘 강의 자료. Contribute to encrypted-def/basic-algo-lecture development by creating an account on GitHub.
github.com
바킹독의 실전 알고리즘을 보면서 모르거나 헷갈렸던 부분, 기억해야 하는 부분을 다시 정리하였습니다.
https://www.notion.so/neuli/2edd1c3c437e4ae98e6492f515d61e21
바킹독의 실전 알고리즘
실수 자료형의 특징
www.notion.so
실수 자료형의 특징
- 실수의 저장/ 연산 과정에서 반드시 오차가 발생한다.
- double에 long long 범위의 정수를 함부로 담으면 안된다.다만 int는 최대 21억이기 때문에 double에 담아도 오차가 생기지 않습니다.
- double은 유효숫자가 15자리인데 long long은 최대 19자리니까 1018+1과 1018을 구분할 수가 없고 그냥 같은 값이 저장됩니다. 즉, double에 long long 범위의 정수를 담을 경우 오차가 섞인 값이 저장될 수 있습니다.
- 실수를 비교할 때는 등호를 사용하면 안된다.
STL
STL을 함수의 인자로 넘길 때는 참조자를 사용하자. ex) vector
표준 입출력
공백을 같이 입력 받을 때
string s; getline(cin, s); cout << s
getline 은 string만 가능하다.
배열
배열을 초기화 시킬 때 알고리즘 헤더의 fill 함수를 사용하자.
fill(a, a + 21, 0);
for 문 벡터 순회
vector<int> v1 = {1, 2, 3}; // v1의 값들이 바뀌지 않음 for (int e: v1) { e++; cout << e << "\\n"; } // 값이 바뀜 for (int& e: v1) { e++; cout << e << "\\n"; }
'ALGORITHM' 카테고리의 다른 글
| [Swift] 17780 새로운 게임 (구현) (0) | 2022.03.01 |
|---|---|
| [Swift] Lv1.로또의 최고 순위와 최저 순위 (dictionary 사용) (0) | 2022.02.27 |
| [swift] 알고리즘 풀기 전 준비 (0) | 2021.08.10 |
| [c++] 체육복 (Greedy) (0) | 2021.05.14 |
| 코딩테스트 준비겸 배울점 정리 (0) | 2021.05.10 |