Programming/백준
-
[1일 1백준 : 2908번] 상수Programming/백준 2021. 1. 24. 23:56
#include #include const int reverseNumber(const int Number) { int num = Number; int digits = log10(Number); int result = 0; for (size_t i = digits; num != 0; i--) { result += (num % 10) * (pow(10, i)); num /= 10; } return result; } int main(void) { std::cin.tie(NULL); std::cout.tie(NULL); std::ios::sync_with_stdio(false); int A, B; std::cin >> A >> B; A = reverseNumber(A); B = reverseNumber(B); ..
-
[1일1백준 : 1157번] 단어 공부Programming/백준 2021. 1. 23. 16:53
문제만 봐서는 생각보다 간단해보였는데 막상해보니 엄청 어려웠던 것 같다.. 3일동안 게속 시도 끝에 풀 수 있었다.. 처음에는 이중for문을 사용했는데, 결과는 같으나 시간초과가 떳다.. 그래서 2중 for문을 안쓰면서 같은 결과가 나오게끔 다시 설계를 했다.. 이중 for문을 이용한 방식 (O(n^2)이라 시간 초과가 떳음..) #include #include #include /* * A ~ Z : 65 ~ 90 a ~ z : 97 ~ 122 tolerance : 32 ASCII Code Chart : https://t1.daumcdn.net/cfile/tistory/2704094E5269503021 */ /// /// 문제에 보면 중복되는 문자까지도 동일하게 취급을 해야되기 때문에 이를 동일시 해주는..
-
[1일 1백준 : 2675번] 문자열 반복Programming/백준 2021. 1. 21. 23:09
테스트 케이스 개수(T)를 첫째줄에 받고 반복할 횟수(R)와 문자열(S)을 받고 받은 문자열의 각각의 문자들을 반복할 횟수(R)만큼만 반복해서 출력해주면 되는 문제이다. #include int main(void) { std::cin.tie(NULL); std::cout.tie(NULL); std::ios::sync_with_stdio(false); int T = 0, R = 0; std::string S; std::cin >> T; for (size_t i = 0; i > R; std::cin >> S; for (size_t j = 0; j < S.size(); j++) { for (size_t k = 0; k < R; k++) { std::cout
-
[1일 1백준 : 10809번] 알파벳 찾기Programming/백준 2021. 1. 20. 16:21
༼ つ ◕_◕ ༽つ #include #include // a ~ z : 97 ~ 122 // 122 - 97 = 25 int main(void) { const int ENTRY_ANCII_NUMBER = 97, END_ANCII_NUMBER = 122; const int MAX_ALPHABET_COUNT = 26; int index[MAX_ALPHABET_COUNT]; memset(index, -1, sizeof(int) * MAX_ALPHABET_COUNT); std::string word; std::cin >> word; for (size_t i = ENTRY_ANCII_NUMBER; i
-
[1일 1백준 : 11720번] 숫자의 합Programming/백준 2021. 1. 20. 15:15
직접 함수를 만들어줄 필요없이 atoi 함수를 통해서도 가능할 것 같아보인다 #include /* * 0 : 48 * 1 : 49 * 2 : 50 * 3 : 51 * 4 : 52 * 5 : 53 * 6 : 54 * 7 : 55 * 8 : 56 * 9 : 57 */ const int ConvertCharToNumber(const char ASCII) { return (int)ASCII % 48; } int main(void) { char* str; int N = 0, sum = 0; std::cin >> N; str = new char[N]; std::cin >> str; for (size_t i = 0; i < N; i++) { sum += ConvertCharToNumber(str[i]); } std:..
-
[1일 1백준 : 1065번] 한수Programming/백준 2021. 1. 20. 14:34
이것도 많이 어려웠다.. 문제 이해가 좀 덜가서 많이 고생했던 것 같다 #include bool IsHansu(const int N) { int number = N; int digit = 0, prev = 0;; int tolerance = 0; int digits = 0; int index[4] = { 0 }; for (size_t i = 0; number != 0; i++) { digit = number % 10; index[i] = digit; number /= 10; digits++; } tolerance = (index[0] - index[1]); for (size_t i = 1; i = digits) break; prev = tolerance;..
-
[1일 1백준 : 4673번] 셀프 넘버Programming/백준 2021. 1. 19. 23:33
이번문제에서 많이 해매서 좀 억지로 푼 감이 있네요.. #include #include #include #include const int d(int n) { const int number = n; int sum = 0; while (n != 0) { sum += n % 10; n /= 10; } return number + sum; } void SelfNumber(int n) { std::vector index; std::vector::iterator iter; index.reserve(10000); int number = 1; for (size_t i = 0; number < n; i++) { number = d(i); index.emplace_back(number); } std::sort(index...