전체 글

전체 글

    베르트랑 공준 풀이

    문제 링크: https://www.acmicpc.net/problem/4948 백준 기본 수학 2 5단계 -4948번 베르트랑 공준을 풀어보았다. 풀이: 소수를 만들어놓고 n부터 2n까지 안에 있는 수의 개수를 센다. C++ #include using namespace std; const int range=123457; // 문제 범위 int main() { int nums[2*range]={0,}; for(int j=2;j

    소수 구하기 풀이

    문제 링크: https://www.acmicpc.net/problem/1929 백준 기본 수학 2 4단계 - 1929번 소수 구하기를 풀어보았다. 풀이: 소수를 전부 구해놓고 그 안에 있는 값만 출력하면 된다. C++ #include using namespace std; const int range=1000001; int main() { int m,n; scanf("%d %d",&m,&n); int nums[range]={0,}; for(int j=2;j

    소인수분해 풀이

    문제 링크: https://www.acmicpc.net/problem/11653 백준 기본 수학 2 3단계 - 11653번 소인수분해를 풀어보았다. 풀이: 소인수분해 결과를 출력한다. C++ #include using namespace std; int main() { int n; scanf("%d",&n); int div=2; // 인수 if(n!=1) { while(n>1) { if(n%div==0) // 나눠지면 인수 출력 { printf("%d\n",div); n/=div; } else div++; // 안나눠지면 인수 증가 } } } Python n=int(input()) div=2 while 1: while n%div==0: print(div) n/=div div+=1 if n==1: break..

    소수 풀이

    문제 링크: https://www.acmicpc.net/problem/2581 백준 기본 수학 2 2단계 - 2581번 소수를 풀어보았다. 풀이: 10000까지 소수를 다 구하고, 뒤집어서 문제를 풀었다. C++ #include #include using namespace std; int main() { int m,n; scanf("%d",&m); scanf("%d",&n); int nums[10001]={0,}; for(int j=2;j

    소수 찾기 풀이

    문제 링크: https://www.acmicpc.net/problem/1978 백준 기본 수학 2 1단계 - 1978번 소수 찾기를 풀어보았다. 풀이: 에라토스테네스의 체를 먼저 구현해 소수를 세고, 그 안에 입력값이 있는지를 알아본다. C++ #include #include using namespace std; int main() { int t; scanf("%d",&t); int innum[101]; // 입력 for(int i=0;i> innum[i]; // nums의 n번째 요소가 0이면 n은 소수가 아님 int nums[1001]; // 소수를 구하기 위한 것 for(int j=2;j

    큰 수 A+B 풀이

    문제 링크: https://www.acmicpc.net/problem/10757 백준 기본 수학 1 8단계 - 10757번 큰 수 A+B를 풀어보았다. 풀이: 파이썬은 그냥 더하면 된다... C++ #include #include using namespace std; int main() { string n1,n2,res,ans; // 수가 크기 때문에, 문자열로 입력받음 cin >> n1 >> n2; int car=0; // 올림수 int onesize=n1.size(); // 첫번째 수의 자릿수 int twosize=n2.size(); // 두번째 수의 자릿수 while(onesize>0||twosize>0) { int nn1=0; // 첫번째 수의 자릿수 중 하나(일의 자리부터 시작) if(onesi..

    설탕 배달 풀이

    문제 링크: https://www.acmicpc.net/problem/2839 백준 기본 수학 1 7단계 - 2839번 설탕 배달을 풀어보았다. 풀이: 주어진 수를 3과 5의 조합으로 나눌 수 있는지 알아보면 된다. C++ #include using namespace std; int solve(int n) { int threes=0; // 3kg 봉지 int fives=n/5; // 5kg 봉지 n%=5; while(fives>=0) { if(n%3==0) // 3kg으로 나눠질 수 있다면 { threes=n/3; n%=3; break; } fives-=1; n+=5; } if(n==0) return fives+threes; // 3kg와 5kg로 잘 나누어졌다면 else return -1; // 나눌 ..

    부녀회장이 될테야 풀이

    문제 링크: https://www.acmicpc.net/problem/2775 백준 기본 수학 1 6단계 - 2775번 부녀회장이 될테야를 풀어보았다. 풀이: 입력이 들어올 때마다 구하면 시간초과가 나기에, 입력이 들어오기 전에 미리 다 구해놓아야 한다. C++ #include using namespace std; int aprt[15][15]={0}; int main() { for(int j=0;j> n; cout