首页 > 其他分享 >CF1838A-Blackboard-List

CF1838A-Blackboard-List

时间:2023-06-10 09:02:24浏览次数:46  
标签:le int Blackboard mn List 黑板 负数 CF1838A 绝对值

题意简述

在黑板上有两个数字,进行如下操作 \(n-2\) 次:

  • 每次在黑板上选择任意两个数,将两个数的差的绝对值写在黑板上。

这样你会得到一个长度为 \(n (3 \le n \le 100)\) 的序列。

一共 \(t (1 \le t \le 100)\) 组数据。

每组数据给定操作后的序列,需要你还原出最初写在黑板上的两个数。

虽然可能有多个答案,不过,你只需要输出其中任意一个可能中的一个数即可。

题解

简单题,分类讨论即可:

  • 存在负数:由于后面写下的都是差的绝对值,不可能凑出负数,所以负数一定是最初的两个数之一。
  • 不存在负数:很明显,两个正数的差的绝对值一定小于大的数的绝对值。也就是 \(a > b > 0 \implies |a - b| = a - b < a\)。所以最大的那个数一定是最初的两个数之一。

于是代码就很好写了:

#include <iostream>

using namespace std;

void work(void) {
    int n; cin >> n;

    int mx = -0x7FFFFFFF, mn = 0x7FFFFFFF;
    for (int x, i = 0; i < n; ++i) {
        cin >> x;
        if (x > mx) mx = x;
        if (x < mn) mn = x;
    }

    cout << (mn < 0 ? mn : mx) << '\n';
}

int main(void) {
    cin.tie(0)->sync_with_stdio(false);

    int T; cin >> T;
    while (T--) work();
}

标签:le,int,Blackboard,mn,List,黑板,负数,CF1838A,绝对值
From: https://www.cnblogs.com/jeefy/p/17470734.html

相关文章

  • The rocketMQTemplate does not exist TransactionListener
    rocketmq-starter版本:2.2.1发送的代码:@Testpublicvoidtest1()throwsException{ //事务id StringtransactionId=UUID.randomUUID().toString(); info(">>>发送半消息!transactionId:{}",transactionId); //发送事务消息 TransactionSendResultsendResu......
  • Python List
    List数据类型一、创建一个列表用把逗号分隔的不同的数据项使用方括号括起来即可。如下所示:>>>name_list=["root","gm","hlr"]二、访问列表中的值使用下标索引来访问列表中的值,与字符串的索引一样,列表索引从0开始。列表可以进行截取、组合等。>>>name_list['root',......
  • C#将DataTable中的某列转换成数组或者List
    DataTableThisDT_Time=useAS.GetDataTableSQL("selectDateTimefromCurveData1");//获取表内容object[]DTTA=ThisDT_Time.AsEnumerable().Select(v=>v.Field<object>("DataTime")).ToArray();//DataTime为转化列的名称List<object>DTTL......
  • Java_Collections.EMPTY_LIST
     1.背景在某些情况下,我们经常需要发挥一个空的集合对象,比如说在数据查询时,并不需要发挥一个NULL或是异常,那么就可以返回一个空的集合对象。如果你想new一个空的List,而这个List以后也不会再添加元素,那么就用Collections#emptyList()好了。newArrayList()或者newLinked......
  • 在List<String>中找出重复的字符串元素__简单高效
    点击查看代码publicvoidassertNoDuplicateStr(List<String>list,Stringkey){if(ObjectUtils.isEmpty(list)){return;}Set<String>set=newHashSet<>();list.stream().forEach(e->Assert.isTrue(set.add(e),String......
  • 使用单例获取yml配置的接口List,来为过滤器设置白名单
    最近在涉及登录访问接口的问题,服务器被人给攻击了,考虑给接口加白名单,如果用注解的方式还要跑到接口上去加代码也不够灵活,那么如何使用过滤器来实现呢?让我们来用demo实现看看。第一步、首先新建一个demo项目jdk11新建一个springboot项目,配置pom.xml1<?xmlversion="1.0"e......
  • List Filtering
    DescriptionInthiskatayouwillcreateafunctionthattakesalistofnon-negativeintegersandstringsandreturnsanewlistwiththestringsfilteredout.Examplefilter_list([1,2,'a','b'])==[1,2]filter_list([1,'a',&......
  • 【leetcode】21. Merge Two Sorted Lists
    将两个升序链表合并为一个新的升序链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。示例1:输入:l1=[1,2,4],l2=[1,3,4]输出:[1,1,2,3,4,4]示例2:输入:l1=[],l2=[]输出:[]示例3:输入:l1=[],l2=[0]输出:[0]提示:两个链表的节点数目范围是[0,......
  • list
      #include<cstring>template<classTp>structListNode{Tpdata;ListNode*next;ListNode*prev;};template<classTp>classList{public:List(){m_node=newListNode<Tp>;m_node->......
  • uniapp使用uview组件的indexList写选择城市
    <template><viewclass=""><viewclass="top"><viewclass="search-boxmt10flexalcenter"><viewclass="search-input"><u-search:showAction=&q......