[C++] 백준 7869 - 두 원 [Gold2]
·
Baekjoon
출처https://www.acmicpc.net/problem/7869풀이 전략세 가지 조건으로 나누어서 풀이를 한다.번호조건1원이 전혀 겹치지 않는 경우2원이 일부만 겹치는 경우3한 원이 다른 원에 포함되는 경사실 세 가지 조건이지만, 1번의 경우는 0을 출력하면 되고, 3번의 경우는 반지름이 작은 원의 넓이를 출력하면 되기 때문에 사실상 2번을 구하는 식만 구현하면 된다.고등학교 수학시간에 많이 나왔던 도형의 넓이를 구하는 문제이지만, 원이 겹치는 넓이를 구해야하기 때문에 은근 까다로울 뿐더러 double 자료형을 써야하기 때문에 신경써야할 부분이 많은 문제이다.잠시 고등학교 수학 시간으로 돌아가보면, 원의 넓이를 구하는 공식은 2πr2이라는 것은 누구나 다 알 것이다. 그리고 원의 일부인 호의 넓이를..
[C++] 백준 5095 - Matrix Powers [Gold4]
·
Baekjoon
출처https://www.acmicpc.net/problem/5095문제가 영어로 되어 있어서 당황할 수는 있지만, 단순히 문제에서 주어진 예시만 보더라도 알 수 있듯이, N,M,P를 입력 받아서 NxN 행렬을 만든 뒤 각각의 성분을 M으로 나눈 나머지를 P번 제곱하면 된다.다만, 주의할 점은 출력 형식이다. 예제가 1개밖에 없어서 0 0 0을 입력해서 프로그램을 종료시키는 것이라고 생각해서 0 0 0을 새로운 변수로 선언해 입력값을 주었지만, 그것이 아니라 0 0 0도 N,M,P이고 N,M,P가 모두 0이 입력될 때까지 무한 반복으로 Testcase를 입력 받아서 행렬 제곱 연산을 수행하는 것이였다. 또한 각 Testcase마다 한 줄씩 띄워져 있어야한다.이 부분 때문에 3번이나 출력 형식 오류가 났었..
[C++] 백준 25206 - 너의 평점은 [Silver5]
·
카테고리 없음
출처https://www.acmicpc.net/problem/25206접근 방식등급에 학점이 대응되고 있으므로, Map STL을 사용하여 등급과 학점을 연관시키려고 했다.입력값의 경우, 과목명, 성적, 학점이 연관되어 있으므로 vector STL을 사용하는데 tuple을 사용하여 pair 처럼 묶어 주었다.GPA를 구하는 방식은 성적 * 학점 / 전체 학점으로 구하였다.소스 코드#include #include #include #include using namespace std;namespace SCORE{ const map points{ {"A+",4.5},{"A0",4.0},{"B+",3.5},{"B0",3.0},{"C+",2.5}, {"C0",2.0},{"D+",1.5}..
[C++] 백준 13699 - 점화식 [Silver 4]
·
Baekjoon
출처https://www.acmicpc.net/problem/13699풀이 전략문제에서 주어진 대로 점화식을 그대로 구현하기만 하면 된다.점화식이 조합에서 파스칼삼각형처럼 대칭을 이루고 있으므로 하나는 왼쪽에서, 다른 하나는 오른쪽에서 움직이면서 F[n]에 저장해놓으면 된다.소스 코드#include #include using namespace std;long long ignition(int n){ long long F[n+1]; F[0]=1; for(int i=1;i>N; long long result=ignition(N); cout결과