码迷,mamicode.com
首页 > 其他好文 > 详细

Codeforces Round#622 Div2B Different Rules

时间:2020-03-01 15:57:57      阅读:74      评论:0      收藏:0      [点我收藏+]

标签:整数   注意   决赛   pre   假设   names   竞争   包括   有一个   

题意:

尼古拉最近才开始从事竞争性节目,但已经有资格进入一个著名的奥运会决赛。将会有n个参与者,其中一个是尼古拉。像任何好的奥林匹克运动会一样,它由两轮组成。厌倦了传统规则,解决最多问题的参与者获胜,组织者想出了不同的规则。

假设在第一轮中,参与者A排在第x位,在第二轮中,参与者A排在第y位。那么参与者A的总分是x+y之和。参与者A的总分是参与者(包括A)的总数,其总分小于或等于A的总分。注意,一些参与者可能最终会有一个共同的总分。同样重要的是要注意,在第一轮和第二轮中,没有两名参与者在同一个地点打成平手。换言之,从1到n的每一个i中,恰好有一个参与者在第一轮中获得了第i名,正好有一个参与者在第二轮中获得了第i名。

奥运会刚结束,尼古拉就被告知他在第一轮获得了第x名,在第二轮获得了第y名。尼古拉不知道其他参与者的结果,但他想知道,如果我们考虑到对他最有利和最不利的结果,他能占据的最小和最大位置是什么。请帮助尼古拉找到这个问题的答案。

输入

第一行包含整数t(1≤t≤100)-要解决的测试用例数。

下面的每一行都包含整数n,x,y(1≤n≤109,1≤x,y≤n)-奥林匹克运动会的参赛人数,尼古拉第一轮和第二轮的参赛地点。

输出

打印两个整数-最小和最大可能的整体位置尼古拉可以。

题解:

#include<bits/stdc++.h>
using namespace std;
int T;
int N,x,y;
int main () {
    scanf("%d",&T);
    while (T--) {
        scanf("%d%d%d",&N,&x,&y);
        printf("%d %d\n",min(N,max(1,x+y-N+1)),min(N,x+y-1));
    }
    return 0;
}

 

Codeforces Round#622 Div2B Different Rules

标签:整数   注意   决赛   pre   假设   names   竞争   包括   有一个   

原文地址:https://www.cnblogs.com/zhanglichen/p/12390151.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!