본문 바로가기

백준30

백준 2942번[c언어] : 퍼거슨과 사과 https://www.acmicpc.net/problem/2942 2942번: 퍼거슨과 사과 맨체스터 유나이티드의 감독 퍼거슨은 빨간 사과를 R개, 초록 사과를 G개 가지고 있다. 훈련장에 있는 선수들 중 몇 명에게 나누어 주려고 한다. 단, 선수들이 서로 같은 개수의 사과를 받지 못하 www.acmicpc.net 풀이 색깔이 다른 사과를 같은 개수대로 받아야 하며 사과의 개수는 남지않아야 한다. 사과가 남지 않게 나누어주려면 (약수) 명에게 나누워줘야 사과의 개수가 남지 않는다 약수 중 가장 큰 수는 최대공약수로 앞서 최대공약수를 구하는 함수 문제를 풀었다. 최대공약수를 구해 for(int i=1부터 최대공약수 까지) 진행하며 n%i==0이라면 사과의 개수는 나누어 떨어지지 않게된다. 선수들에게 나누워.. 2022. 5. 4.
백준 9012번[c언어] : 괄호 https://www.acmicpc.net/problem/9012 9012번: 괄호 괄호 문자열(Parenthesis String, PS)은 두 개의 괄호 기호인 ‘(’ 와 ‘)’ 만으로 구성되어 있는 문자열이다. 그 중에서 괄호의 모양이 바르게 구성된 문자열을 올바른 괄호 문자열(Valid PS, VPS)이라고 www.acmicpc.net 풀이 스택 문제에 있어서 스택을 써서 사용해야 하나 싶지만 구지 스택을 사용하지 않고도 풀 수 있다. c언어로 스택을 구현하기엔 너무 코드가 길기 때문에 스택을 쓰고싶다면 c++의 stack라이브러리를 사용하도록 하자 스택의 개념으로 먼저 다가가면 '(' 를 push로 생각하고 ')'을 pop으로 생각할 수 있다. 완변한 괄호가 되려면 스택의 상태는 0이 되어야한다... 2022. 5. 3.
백준 9009번[c/c++] : 피보나치 https://www.acmicpc.net/problem/9009 9009번: 피보나치 입력 데이터는 표준입력을 사용한다. 입력은 T 개의 테스트 데이터로 구성된다. 입력의 첫 번째 줄에는 테스트 데이터의 수를 나타내는 정수 T 가 주어진다. 각 테스트 데이터에는 하나의 정수 n www.acmicpc.net 풀이 재귀적 풀이 fibo함수에 입력한 값을 넘겨준다 넘어온 값이 1이라면 계산할 필요없가 없으므로 1을 출력한다 만약 입력한 값이 피보나치 수라면 입력한 값을 그대로 출력한다. 입력한 값이 피보나치 수가 아니라면 입력한 값보다 작은 피보나치 수를 구한다(입력한 수보다는 작지만 피보나치 수열중에서는 가장 큰 값) = max_fibo에서 return 해준다. 이 값을 max라고하자. 입력한 값-max가.. 2022. 5. 2.
백준 17103번[c언어] : 골드바흐 파티션 https://www.acmicpc.net/problem/17103 17103번: 골드바흐 파티션 첫째 줄에 테스트 케이스의 개수 T (1 ≤ T ≤ 100)가 주어진다. 각 테스트 케이스는 한 줄로 이루어져 있고, 정수 N은 짝수이고, 2 < N ≤ 1,000,000을 만족한다. www.acmicpc.net 2022.03.21 - [백준] - 백준 9020번 [c언어] : 골드바흐의 추측 백준 9020번 [c언어] : 골드바흐의 추측 https://www.acmicpc.net/problem/9020 9020번: 골드바흐의 추측 1보다 큰 자연수 중에서 1과 자기 자신을 제외한 약수가 없는 자연수를 소수라고 한다. 예를 들어, 5는 1과 5를 제외한 약수가 없기 때문에 dongkyung.tistory.c.. 2022. 5. 1.