문제 해결/BaekJoon
[백준] [C++] 5217번 쌍의 합
WSLim_97
2022. 11. 13. 19:51
반응형
https://www.acmicpc.net/problem/5217
5217번: 쌍의 합
1보다 크거나 같고 12보다 작거나 같은 자연수 n이 주어졌을 때, 합이 n이 되는 두 자연수의 쌍을 찾는 프로그램을 작성하시오. 예를 들어, 5가 주어진 경우 가능한 쌍은 1,4와 2,3이 있다. 두 수는
www.acmicpc.net
코드
#include <iostream>
using namespace std;
int main() {
int a, num;
cin >> a;
for (int i = 1; i <= a; i++) {
cin >> num;
cout << "Pairs for " << num << ": ";
int count = 0;
for (int j = 1; j <= num / 2; j++) {
int n = num - j;
if (n == j || n <= 0) {
break;
}
else {
if (count++) {
cout << ", ";
}
cout << j << " " << n;
}
}
cout << "\n";
}
return 0;
}
풀이
num를 입력받고 합이 num이 되는 두 수를 구하는 문제이다. 단, 1 <= num <= 12이고 두 수는 같아선 안된다.
두 수는 n과 j로 선정하였고 j는 반복문을 통해 하나씩 증가시키고, 증가시킨 j를 사용해 n을 구한다.
n이 j와 같거나 n이 0보다 작거나 같다면 루프를 빠져나온다.
그렇지 않다면 두 수를 출력하고 해당하는 n과 j가 없다면 아무것도 출력하지 않는다.
참고: https://jaimemin.tistory.com/1776
백준 5217번 쌍의 합
문제 링크입니다: https://www.acmicpc.net/problem/5217 5217번: 쌍의 합 1보다 크거나 같고 12보다 작거나 같은 자연수 n이 주어졌을 때, 합이 n이 되는 두 자연수의 쌍을 찾는 프로그램을 작성하시오. 예를
jaimemin.tistory.com
반응형