Algorithm/Problem Solving 2020. 5. 17. 14:18

(공감과 댓글 하나는 글쓴이에게 큰 힘이 됩니다.)

 

문제 링크

- https://www.acmicpc.net/problem/1676

 

사용 알고리즘

 

풀이

- 끝자리가 0이 되려면 2와 5가 필요

- 따라서 0이 몇 개인지 알아내려면, N!를 소인수 분해하여 2와 5의 개수중 작은 수의 개수가 0의 개수

 

소스 코드

- https://github.com/moomini/algorithm/blob/master/boj/1676.cpp

#include <cstdio>
 
int main(void) {
    int fivesCount = 0, twosCount = 0;
    int n; for (scanf("%d"&n); n--;) {
        int num = n + 1;
        while (num % 5 == 0) {
            num /= 5;
            ++fivesCount;
        }
        while (num % 2 == 0) {
            num /= 2;
            ++twosCount;
        }
    }
    printf("%d\n", (fivesCount < twosCount) ? fivesCount : twosCount);
    return 0;
}
cs

'Algorithm > Problem Solving' 카테고리의 다른 글

[BOJ/2751] 수 정렬하기 2  (0) 2020.05.18
[BOJ/2004] 조합 0의 개수  (0) 2020.05.17
[BOJ/10872] 팩토리얼  (0) 2020.05.16
[BOJ/11653] 소인수분해  (0) 2020.05.16
[BOJ/6588] 골드바흐의 추측  (0) 2020.05.15
posted by DevMoomin
:
Algorithm/Problem Solving 2020. 5. 16. 15:03

(공감과 댓글 하나는 글쓴이에게 큰 힘이 됩니다.)

 

문제 링크

- https://www.acmicpc.net/problem/10872

 

사용 알고리즘

 

풀이

 

소스 코드

- https://github.com/moomini/algorithm/tree/master/boj

#include <cstdio>
 
int main(void) {
    int ans = 1;
    int n; for (scanf("%d"&n); n--;) {
        ans *= (n + 1);
    }
    printf("%d\n", ans);
    return 0;
}
cs

'Algorithm > Problem Solving' 카테고리의 다른 글

[BOJ/2004] 조합 0의 개수  (0) 2020.05.17
[BOJ/1676] 팩토리얼 0의 개수  (0) 2020.05.17
[BOJ/11653] 소인수분해  (0) 2020.05.16
[BOJ/6588] 골드바흐의 추측  (0) 2020.05.15
[BOJ/1929] 소수 구하기  (0) 2020.05.14
posted by DevMoomin
:
Algorithm/Problem Solving 2020. 5. 16. 14:59

(공감과 댓글 하나는 글쓴이에게 큰 힘이 됩니다.)

 

문제 링크

- https://www.acmicpc.net/problem/11653

 

사용 알고리즘

 

풀이

- 2부터 루트N까지 루프를 돌며 나눠지지 않을 때 까지 계속 나누며 출력

- N 자체가 소수일 수도 있으므로 해당 부분 처리

 

소스 코드

- https://github.com/moomini/algorithm/tree/master/boj

#include <cstdio>
 
int main(void) {
    int n; scanf("%d"&n);
    for (int i = 2; i * i <= n; ++i) {
        while (n % i == 0) {
            printf("%d\n", i);
            n /= i;
        }
    }
    if (n > 1printf("%d\n", n);
    return 0;
}
cs

'Algorithm > Problem Solving' 카테고리의 다른 글

[BOJ/1676] 팩토리얼 0의 개수  (0) 2020.05.17
[BOJ/10872] 팩토리얼  (0) 2020.05.16
[BOJ/6588] 골드바흐의 추측  (0) 2020.05.15
[BOJ/1929] 소수 구하기  (0) 2020.05.14
[BOJ/1978] 소수 찾기  (0) 2020.05.13
posted by DevMoomin
:
Algorithm/Problem Solving 2020. 5. 15. 20:26

(공감과 댓글 하나는 글쓴이에게 큰 힘이 됩니다.)

 

문제 링크

- https://www.acmicpc.net/problem/6588

 

사용 알고리즘

- 에라토스테네스의 채

 

풀이

 

소스 코드

- https://github.com/moomini/algorithm/blob/master/boj/6588.cpp

#include <cstdio>
 
int arr[1000003];
 
int main(void) {
    for (int i = 2; i <= 1000000++i) {
        if (arr[i] == 0) {
            arr[i] = 1;
            for (int j = i + i; j <= 1000000; j += i) {
                arr[j] = -1;
            }
        }
    }
    while (1) {
        int n; scanf("%d"&n);
        if (n == 0break;
        int flag = 0;
        for (int i = 2; i <= n; ++i) {
            if (arr[i] == 1 && arr[n - i] == 1) {
                printf("%d = %d + %d\n", n, i, n - i);
                flag = 1;
                break;
            }
        }
        if (flag == 0printf("Goldbach's conjecture is wrong.\n");
    }
 
    return 0;
}
cs

'Algorithm > Problem Solving' 카테고리의 다른 글

[BOJ/10872] 팩토리얼  (0) 2020.05.16
[BOJ/11653] 소인수분해  (0) 2020.05.16
[BOJ/1929] 소수 구하기  (0) 2020.05.14
[BOJ/1978] 소수 찾기  (0) 2020.05.13
[BOJ/11576] Base Conversion  (0) 2020.05.13
posted by DevMoomin
:
Algorithm/Problem Solving 2020. 5. 14. 22:27

(공감과 댓글 하나는 글쓴이에게 큰 힘이 됩니다.)

 

문제 링크

- https://www.acmicpc.net/problem/1929

 

사용 알고리즘

- 에라토스테네스의 채

 

풀이

 

소스 코드

- https://github.com/moomini/algorithm/blob/master/boj/1929.cpp

#include <cstdio>
 
int arr[1000003];
 
int main(void) {
    for (int i = 2; i <= 1000000++i) {
        if (arr[i] == 0) {
            arr[i] = 1;
            for (int j = i + i; j <= 1000000; j += i) {
                arr[j] = -1;
            }
        }
    }
    int m, n; scanf("%d %d"&m, &n);
    for (int i = m; i <= n; ++i) {
        if (arr[i] == 1) {
            printf("%d\n", i);
        }
    }
    return 0;
}
cs

'Algorithm > Problem Solving' 카테고리의 다른 글

[BOJ/11653] 소인수분해  (0) 2020.05.16
[BOJ/6588] 골드바흐의 추측  (0) 2020.05.15
[BOJ/1978] 소수 찾기  (0) 2020.05.13
[BOJ/11576] Base Conversion  (0) 2020.05.13
[BOJ/2089] -2진수  (0) 2020.05.12
posted by DevMoomin
:
Algorithm/Problem Solving 2020. 5. 13. 23:02

(공감과 댓글 하나는 글쓴이에게 큰 힘이 됩니다.)

 

문제 링크

- https://www.acmicpc.net/problem/1978

 

사용 알고리즘

 

풀이

 

소스 코드

- https://github.com/moomini/algorithm/blob/master/boj/1978.cpp

#include <cstdio>
 
int main(void) {
    int ans = 0;
    int n; for (scanf("%d"&n); n--;) {
        int num; scanf("%d"&num);
        if (num < 2continue;
        int flag = 1;
        for (int i = 2; i * i <= num; ++i) {
            if (num % i == 0) {
                flag = 0;
                break;
            }
        }
        if (flag) ++ans;
    }
    printf("%d\n", ans);
    return 0;
}
cs

'Algorithm > Problem Solving' 카테고리의 다른 글

[BOJ/6588] 골드바흐의 추측  (0) 2020.05.15
[BOJ/1929] 소수 구하기  (0) 2020.05.14
[BOJ/11576] Base Conversion  (0) 2020.05.13
[BOJ/2089] -2진수  (0) 2020.05.12
[BOJ/1212] 8진수 2진수  (0) 2020.05.12
posted by DevMoomin
:
Algorithm/Problem Solving 2020. 5. 13. 22:54

(공감과 댓글 하나는 글쓴이에게 큰 힘이 됩니다.)

 

문제 링크

- https://www.acmicpc.net/problem/11576

 

사용 알고리즘

 

풀이

- A진수를 10진수로 변환하고, 10진수를 B진수로 변환

 

소스 코드

- https://github.com/moomini/algorithm/blob/master/boj/11576.cpp

#include <cstdio>
#include <vector>
#include <algorithm>
 
using namespace std;
 
int main(void) {
    int a, b; scanf("%d %d"&a, &b);
    int num = 0;
    int m; for (scanf("%d"&m); m--;) {
        num *= a;
        int temp; scanf("%d"&temp);
        num += temp;
    }
    if (num == 0printf("0");
    vector<int> v;
    while (num != 0) {
        v.push_back(num % b);
        num /= b;
    }
    reverse(v.begin(), v.end());
    int len = v.size();
    for (int i = 0; i < len; ++i) printf("%d ", v[i]);
    printf("\n");
    return 0;
}
cs

'Algorithm > Problem Solving' 카테고리의 다른 글

[BOJ/1929] 소수 구하기  (0) 2020.05.14
[BOJ/1978] 소수 찾기  (0) 2020.05.13
[BOJ/2089] -2진수  (0) 2020.05.12
[BOJ/1212] 8진수 2진수  (0) 2020.05.12
[BOJ/1373] 2진수 8진수  (0) 2020.05.11
posted by DevMoomin
:
Algorithm/Problem Solving 2020. 5. 12. 23:14

(공감과 댓글 하나는 글쓴이에게 큰 힘이 됩니다.)

 

문제 링크

- https://www.acmicpc.net/problem/2089

 

사용 알고리즘

 

풀이

- 나머지가 음수가 되지 않도록 계산

 

소스 코드

- https://github.com/moomini/algorithm/blob/master/boj/2089.cpp

#include <cstdio>
#include <vector>
#include <algorithm>
 
using namespace std;
 
int main(void) {
    int n; scanf("%d"&n);
    vector<int> v;
    if (n == 0printf("0");
    while (n != 0) {
        int remainder = n % (-2);
        n /= (-2);
        if (remainder == -1) {
            remainder = 1;
            ++n;
        }
        v.push_back(remainder);
    }
    reverse(v.begin(), v.end());
    int size = v.size();
    for (int i = 0; i < size++i) printf("%d", v[i]);
    printf("\n");
    return 0;
}

Colored by Color Scripter

cs

'Algorithm > Problem Solving' 카테고리의 다른 글

[BOJ/1978] 소수 찾기  (0) 2020.05.13
[BOJ/11576] Base Conversion  (0) 2020.05.13
[BOJ/1212] 8진수 2진수  (0) 2020.05.12
[BOJ/1373] 2진수 8진수  (0) 2020.05.11
[BOJ/2745] 진법 변환  (0) 2020.04.29
posted by DevMoomin
:
Algorithm/Problem Solving 2020. 5. 12. 23:00

(공감과 댓글 하나는 글쓴이에게 큰 힘이 됩니다.)

 

문제 링크

- https://www.acmicpc.net/problem/1212

 

사용 알고리즘

 

풀이

- 8진수 1자리당 2진수 3자리 (첫 번째 수는 1로 시작)

 

소스 코드

- https://github.com/moomini/algorithm/blob/master/boj/1212.cpp

#include <cstdio>
#include <cstring>
#include <algorithm>
 
using namespace std;
 
char input[333337];
 
int main(void) {
    scanf("%s", input);
    int len = strlen(input);
    for (int i = 0; i < len; ++i) {
        int num = input[i] - '0';
        int temp[3];
        for (int j = 0; j < 3++j) {
            temp[j] = num % 2;
            num /= 2;
        }
        reverse(temp, temp + 3);
        if (i == 0) {
            int flag = 0;
            for (int j = 0; j < 3++j) {
                if (flag == 1) {
                    printf("%d", temp[j]);
                }
                if (flag == 0 && temp[j] == 1) {
                    flag = 1;
                    printf("%d", temp[j]);
                }
            }
            if (flag == 0printf("0\n");
        }
        else {
            for (int j = 0; j < 3++j) {
                printf("%d", temp[j]);
            }
        }
 
    }
    printf("\n");
    return 0;
}

Colored by Color Scripter

cs

'Algorithm > Problem Solving' 카테고리의 다른 글

[BOJ/11576] Base Conversion  (0) 2020.05.13
[BOJ/2089] -2진수  (0) 2020.05.12
[BOJ/1373] 2진수 8진수  (0) 2020.05.11
[BOJ/2745] 진법 변환  (0) 2020.04.29
[BOJ/11005] 진법 변환 2  (0) 2020.04.27
posted by DevMoomin
:
Java/Study 2020. 5. 12. 00:40

(공감과 댓글 하나는 글쓴이에게 큰 힘이 됩니다.)

 

JDK 설치 : https://devmoomini.tistory.com/39

인텔리제이(IntelliJ) 설치 : https://devmoomini.tistory.com/106

 

자바(JAVA) 프로그래밍을 하기 위해서는 프로젝트를 생성해야 한다.

 

1. 인텔리제이(IntelliJ) 실행 후 Create New Project 클릭

2. 좌측 트리에서 Java를 선택하고, Next 클릭

3. Create project from template를 체크하고, Next 클릭

4. 프로젝트 이름, 경로, 패키지 명을 입력하고, Finish 클릭

5. 프로젝트 생성 완료

posted by DevMoomin
: