백준 algorithm
-
백준 1427 - 소트인사이드백준 algorithm 2019. 11. 3. 13:54
입력받은 숫자를 하나씩 vector에 넣는 과정이 필요하다. vector를 사용해 간단히 sort하면 되는 문제이다. 아래는 코드이다. 필요한 전처리기 #include #include #include #include #include using namespace std; int main() { vector arr;//숫자 입력받을 vector 선언 int N; //입력받을 숫자 cin >> N; while (N > 10) //각자리의 숫자를 vector에 삽입 { int tmp; tmp = N % 10; arr.push_back(tmp); N = N / 10; } arr.push_back(N); sort(arr.begin(), arr.end(), greater());//배열 sorting for (int ..
-
백준 1978 - 소수찾기백준 algorithm 2019. 10. 30. 00:28
중간고사가 끝나고 처음 푼 간단한 문제이다. 소수의 조건을 만족하는지 아닌지에 대한 함수를 만들어 해결하였다. #include using namespace std; bool Prime_Num(int num) { if (num == 1)return false; else if (num == 2)return true; else{ for (int i = 2; i > N; for (int i = 0; i > temp; if (Prime_Num(temp) == true)count++;..
-
백준 2798 - 블랙잭백준 algorithm 2019. 10. 2. 00:21
브루트 포스로 검색을 하면서 조건에 맞는 값을 구하면 되는 문제이다. 다른 포스트들을 보니 DFS로 하는 방법 역시 있는데, 공부를 해봐야겠다. #include #include #include #include #define Max_num 3 using namespace std; int main() { int N, M; cin >> N; //카드의 갯수 cin >> M; vector Card; int answer=0; for (int i = 0; i > tem; Card.push_back(tem); } for (int a = 0; a < Card.size() - 2; a++) { for (int b = a+1; b < Card.size() - 1; b++) {..
-
백준 1676 - 팩토리얼 0의 개수백준 algorithm 2019. 9. 29. 14:16
문제풀이 : 예를 들어 111533400 이라는 숫자가 있다고 하면 뒤에서부터 0이 아닌 숫자가 나올때까지 0의 숫자를 세는 문제이다. 이 경우에 0의 개수는 2개이다. 첫번째 풀이 : 실제로 n!을 계산하여 하려고 하였지만, 범위를 한참 벗어나서 구하지 못하였다. 두번째 풀이 : 소인수 분해를 하여 2*5의 갯수에 따라 0의 갯수가 정해지는 것을 깨달았다. 그래서 곱해지는 숫자마다마다를 소인수 분해하여 2의 갯수와 5의 갯수를 각각 구했다. 10 = 2*5 => 2(1개) 5(1개) 위와 같은 방식으로 팩토리얼 계산시 곱해지는 수들의 소인수중 2와 5의 개수를 구하였다. 2와 5가 하나씩 짝을 이루어야 0이 되므로 2의 개수와 5의 개수중 최소값을 구하면 되는 문제이다. *알고리즘은 쉽게 짰으나, 코딩..
-
백준 2581 - 소수백준 algorithm 2019. 9. 27. 15:54
에라토스테네스의 체를 사용하면 풀 수 있는 문제이다. 기본적인 알고리즘은 쉽게 짰었는데 제대로된 예외처리를 못해서 5번 넘게 틀렸다.... 2, 3, 5등은 소수인데 이 수들까지 소수가 아닌 것으로 인식을 되게 코드를 짜서 더 틀렸었다. 작은 범위의 수들부터 정확히 따져보면서 코드를 짜야겠다. 에라토스테네스의 체는 아래 URL에서 확인 가능하다. https://ko.wikipedia.org/wiki/%EC%97%90%EB%9D%BC%ED%86%A0%EC%8A%A4%ED%85%8C%EB%84%A4%EC%8A%A4%EC%9D%98_%EC%B2%B4 에라토스테네스의 체 - 위키백과, 우리 모두의 백과사전 위키백과, 우리 모두의 백과사전. 둘러보기로 가기 검색하러 가기 수학에서 에라토스테네스의 체는 소수(소쑤)..
-
백준 10773 - 제로백준 algorithm 2019. 9. 25. 07:46
stack 라이브러리를 쓸 줄 아는지에 대한 문제이다. stack에 대한 개념을 알고 있어야한다. 예외처리가 필요 없는 문제라 쉬웠다. #include #include using namespace std; int main() { int num; //입력받을 명령어 갯수 변수 int command; // 명령어 변수 int val=0; // 최종값 변수 cin >> num; stack stack; for (int i = 0; i > command; if (command == 0) { stack.pop(); } else { stack.push(command); } } while (!stack.empty())//empty면 true를 반환한다 { val += stack.top..