一日,老師教到了數字的比大小,此時,某K想到了一種新的比較方式,如下:
a+b=c
但若a>b時,答案就變成[>c],
若a=b時,答案就變成[=c],
若a<b時,答案就變成[<c]。
而[ >c ] > [ =c ] > [ <c
1+1=[=2]
2+0=[>2]
0+2=[<2]
輸入說明 :
輸出說明 :
範例輸入 :
5
1 5
5 1
3 3
4 5
5 6
0
範例輸出 :
<11 <9 >6 =6 <6
提示 :
延長數線。
程式碼 :
#include<stdio.h>
int main()
{
    int a,b,c[1000][2],i,j,k,n,temp;
    while(scanf("%d",&n)==1)
    {
        if(n == 0)
            break;
        
        for(i=0; i<n; i++)
        {
            scanf("%d %d",&a,&b);
            if(a > b)
                c[i][0] = 3;
            else if(a == b)
                c[i][0] = 2;
            else
                c[i][0] = 1;
            c[i][1] = a + b;
        }
        for(i=0; i<n; i++)
            for(j=i+1; j<n; j++)
                if((c[i][1] < c[j][1]) || ((c[i][1]==c[j][1]) && (c[i][0]<c[j][0])))
                    for(k=0; k<2; k++)
                    {
                        temp = c[i][k];
                        c[i][k] = c[j][k];
                        c[j][k] = temp;
                    }
        for(i=0; i<n; i++)
            printf("%c%d ",c[i][0]==1?'<':c[i][0]==2?'=':'>',c[i][1]);
        printf("\n");
    }
    return 0;
}
http://zerojudge.tw/ShowProblem?problemid=d092
 
沒有留言:
張貼留言