Algorithm
알고리즘 문제 풀이 주의사항
안중환
2015. 11. 5. 09:55
- 배열을 따로 저장 없이 바로 출력해도 된다. -> 각각을 독립적인 문제로 생각하고 풀면 된다. -> 전체 테스트 케이스를 입력 받은 다음에, 풀지 않아도 된다.
- 항상 널문자를 염두해두자
- 아스키코드를 활용하자
- java와 c자료형 범위가 다르다
- java
long: 8byte -> 64bit
- c:
long: 4 byte -> 32bit
long long: 8 byte -> 64bit - 시간복잡도: 1초 1억
ex. for문 O(N), 이중 for문인 경우 O(N^2)
* 1초가 걸리는 입력의 크기
- O(1)
- O(logN)- O(N) : 1억
- O(nLogN): 5백만
- O(N^2) : 1만
- O(N^3) : 500
- O(2^N) : 20
- O(N!): 10 - dfs는 재귀가 depth가 4000번 이상일 경우 안됨->보통 bfs로 푼다.
- 한 줄 입력 받기
- fgets(s, 100, stdin); // cstdio.h header
- scanf("%[^\n]\n", s);
- getline(cin, s); // string header