728x90
구름 문제은행에 있는 문제들 몇몇은 참 조건이 부족해서 문제를 읽을 때 참 불편한 느낌이 있다.
게다가 구름 문제? 보다 윤군님 문제가 더 많은 것 같기도;;
a, b의 범위라던지 등등 대강 했더니 맞았다.
입출력 예시 1로 설명하겠다.
a_pointer와 b_pointer이 각각 0부터 시작한다.
a[0]과 b[0]을 비교해서 b[0]이 더 작으므로 b[0]을 출력하고 b_pointer은 1이 된다.
a[0]과 b[1]을 비교해서 a[0]이 더 작으므로 a[0]을 출력하고 a_pointer은 1이 된다.
.
.
.
쭉쭉 가다가 a배열이나 b 배열이 끝까지 간 상황이라면 하나만 출력한다.
#include <iostream>
using namespace std;
int main() {
int a_size, b_size;
int a[1001], b[1001];
int a_pointer=0, b_pointer=0;
cin>>a_size>>b_size;
for(int i=0; i<a_size; i++)
cin>>a[i];
for(int i=0; i<b_size; i++)
cin>>b[i];
while(1)
{
if(a[a_pointer]<=b[b_pointer] && a_pointer<a_size &&a[a_pointer])
{
cout<<a[a_pointer]<<" ";
a_pointer++;
}
else if(a[a_pointer]>=b[b_pointer] && b_pointer<b_size && b[b_pointer])
{
cout<<b[b_pointer]<<" ";
b_pointer++;
}
else if(a_size<=a_pointer && b_pointer<b_size)
{
cout<<b[b_pointer]<<" ";
b_pointer++;
}
else if(b_size<=b_pointer && a_pointer<a_size)
{
cout<<a[a_pointer]<<" ";
a_pointer++;
}
else if (b_size<=b_pointer || a_size<=a_pointer) break;
}
return 0;
}
728x90
'알고리즘 > 문제' 카테고리의 다른 글
구름 문제은행 (시공의 폭풍 속으로) <C++> (0) | 2020.07.17 |
---|---|
구름 문제은행 (앵무새 꼬꼬) <C++> (0) | 2020.07.11 |
[백준] 17615. 볼 모으기 <C++> (0) | 2020.06.20 |
[백준] 1789. 수들의 합 <C++> (0) | 2020.06.07 |
[백준] 9094. 수학적 호기심 <C++> (0) | 2020.06.03 |
댓글