uva - 10812 - Beat the Spread! 解题报告

原题链接:http://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&page=show_problem&problem=1753

题目大意:第一列输入一个整数表示有几组测试数据,每组数据有两个整数s,d。s代表比赛结束时二队分数的总和,d代表比赛结束时分数差的绝对值。输出这两队的分数,分数大的在前面,如果没有,则输出“impossible”

 1 #include<stdio.h>
 2 int main(){
 3     int n,a,b,x,y,t;
 4     scanf("%d",&n);
 5     while(n--){
 6     scanf("%d%d",&a,&b);
 7     x=(a+b)/2;  //求两队的分数//
 8     y=(a-b)/2;
 9     if(y<0||x+y!=a) printf("impossible\n"); //x+y!=a防止除余取整//
10     else if(x<y) {t=x;x=y;y=t;} //分数大的输出在前//
11     else printf("%d %d\n",x,y);}
12 }

 

posted @ 2013-02-13 09:31  sev_en  阅读(198)  评论(-1编辑  收藏  举报