hdu 1412{A}+{B}(물 문 제 는 출력 형식 에 주의해 야 합 니 다)

2186 단어 cprintf
{A} + {B}
Time Limit: 10000/5000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) Total Submission(s): 11927    Accepted Submission(s): 4992
Problem Description
두 개의 집합 을 드 리 겠 습 니 다.{A}+{B}을 요구 합 니 다.
주:같은 집합 에는 두 개의 같은 원소 가 있 을 수 없습니다.
 
Input
각 조 의 입력 데 이 터 는 세 줄 로 나 뉘 는데 첫 번 째 줄 은 두 개의 숫자 n,m(0 
Output
각 그룹의 데이터 가 한 줄 의 데 이 터 를 출력 하 는 것 은 합 친 후의 집합 을 나타 내 고 작은 것 에서 큰 것 으로 출력 해 야 하 며 모든 요소 사이 에 빈 칸 이 있 습 니 다.
 
Sample Input

   
   
   
   
1 2 1 2 3 1 2 1 1 2

 
Sample Output

   
   
   
   
1 2 3 1 2

출력 형식 주의
#include<iostream>
#include<cstdio>
#include<algorithm>
using namespace std;

int a[20005];

int main()
{
    int n,m;
    int i;
    while(cin>>n>>m)
    {
        for(i=0; i<n; i++)
            scanf("%d",&a[i]);
        for(i=n; i<n+m; i++)
            scanf("%d",&a[i]);
        sort(a,a+n+m);
        if(n+m>1)
            cout<<a[0];
        if(m+n==1)
            cout<<a[0]<<endl;
        if(m+n==0)
            continue;
        for(i=1; i<n+m; i++)
        {
            if(a[i]==a[i-1])
            {
                if(i+1==m+n)
                    cout<<endl;
                else
                    continue;
            }
            else
            {
                if(i+1==m+n)
                    cout<<" "<<a[i]<<endl;
                else
                    cout<<" "<<a[i];
            }
        }
    }
    return 0;
}

좋은 웹페이지 즐겨찾기