原题传送器<----点我


**题意:**n个数字,请你给它们排个序围成一个环,满足任意一个数两边的数之和大于它本身,例如题目给的图(左图为正确答案),如果不存在这样的环就输出NO。
难度★


题解

这题主要靠思路,能想到正确的方法就很easy,码量不多。
对于这组数我们可以先排升序,然后取后三位比较~~(为什么,往下看)~~ ,例如后三位是a[n-2],a[n-1],a[n],然后比较a[n]>a[n-1]+a[n-2]是否成立,如果不成立就说明肯定不能成环,反手就是输出NO;如果成立,先将a[n]和a[n-1]输出,然后除了a[n-2]的其他数直接输出就行,把a[n-2]最后输出;
即a[n] a[n-1] a[1] a[2] …a[n-3]
因为我们排过序,所以a[1]到a[n-3]都是升序列,两边数之和绝对大于它本身(光右边的数就大于),然后因为我们特判过所以a[n]<a[n-1]+a[n-2],而且a[n]为最大数,a[n-1],a[n-2]都小于它,所以也满足,这样所有数都满足了。


其实感觉这题也就A题的难度,讲的有点啰嗦,大致能明白就行。
上代码

#include<iostream>
#include<cstdio>
#include<string>
#include<algorithm>
using namespace std;
int a[100003];
int main()
{int n;scanf("%d",&n);for(int i=1;i<=n;i++)scanf("%d",&a[i]);sort(a+1,a+1+n,less<int>());if(a[n]<(a[n-1]+a[n-2])){cout<<"YES"<<endl;cout<<a[n]<<" "<<a[n-1]<<" ";for(int i=n-3;i>=1;i--){printf("%d ",a[i]);}cout<<a[n-2];}else cout<<"NO";return 0;
}

写完题解,睡觉
0:35

CodeForces - 1189B Number Circle相关推荐

  1. Codeforces 1189B Number Circle

    题目链接:http://codeforces.com/problemset/problem/1189/B AC代码: #include<bits/stdc++.h> using names ...

  2. CF1189B Number Circle(数字圈)

    You are given nn numbers a1,a2,-,ana1,a2,-,an. Is it possible to arrange them in a circle in such a ...

  3. Codeforces - 466C - Number of Ways - 组合数学

    https://codeforces.com/problemset/problem/466/C 要把数据分为均等的非空的三组,那么每次确定第二个分割点的时候把(除此之外的)第一个分割点的数目加上就可以 ...

  4. CodeForces - 466C Number of Ways(推公式/dp)

    题目链接:点击查看 题目大意:给出一个长度为 n 的数列,现在要求出满足条件的 ( i , j ) 的匹配数量,满足: 题目分析:训练时推的公式,简单说一下吧,维护前缀和 sum,则确定两个断点 ( ...

  5. CodeForces - 1454E Number of Simple Paths(基环树+思维)

    题目链接:点击查看 题目大意:给出一棵 n 个点的基环树,现在需要求所有长度大于等于 1 的路径个数 题目分析:对于所有的路径 ( x , y ) 可以分成下列两种情况来考虑: 路径不会经过环上的边: ...

  6. CodeForces - 1426F Number of Subsequences(dp)

    题目链接:点击查看 题目大意:给出一个长度为 n 的字符串,由 ' a ' , ' b ' , ' c ' 和 ' ? ' 组成,每一个 ' ? ' 都可以变成三个字母之一,这样的话假设有 k 个 ' ...

  7. Codeforces 1334 C. Circle of Monsters

    题意: n n n 只怪物围成一圈,每只怪物拥有体力 a a a 和爆炸伤害 b b b 如果怪物 i i i 死亡,则与他相邻的下一只怪物将受到 b i b_i bi​ 点伤害,每次你能随便挑一只怪 ...

  8. Codeforces Round #572 (Div. 2)(ABCD1D2E)

    Keanu Reeves CodeForces - 1189A After playing Neo in the legendary "Matrix" trilogy, Keanu ...

  9. Codeforces Round #572 (Div. 2)B

    B. Number Circle 题目链接:http://codeforces.com/contest/1189/problem/B 题目: You are given n numbers a1,a2 ...

最新文章

  1. Android屏幕像素密度适配详解
  2. 笔记:less的三种使用方法
  3. 网页信息上传服务器,Unity 连接网页服务器 获取数据上传数据
  4. 1054: 猴子吃桃
  5. Sklearn——用Sklearn实现K近邻分类(KNN)
  6. LoggerFactory is not a Logback LoggerContext but Logback is on the classpath
  7. uniapp打开外部链接
  8. 物理学原理与工程应用期末复习之公式总结
  9. Mysql中WhereIn和Join的性能比对
  10. 百度智能云BCC云服务器释放实例
  11. RK3288 开发板 排插物理引脚对应图以及如何进入android6.0.1内核终端、uboot终端
  12. 卸载vue-cli过程中npm uninstall vue-cli -g 一直显示 up to date in 0.042s无法卸载
  13. [DIV/CSS] 用CSS和JS打造一个简单的图片编辑器
  14. vue3+ts import引用报错Could not find a declaration file for module ‘three-obj-mtl-loader‘.
  15. 广告素材优选算法在内容营销中的应用实践
  16. 对ArcGIS主成分分析的解释
  17. 形式语言与自动机 复习知识点总结 CH2
  18. matlab散斑噪声,合成孔径雷达图像的散斑噪声滤波方法与流程
  19. 游戏开发第一课:数字华容道
  20. 计算机科学与技术专业的门户网站,2018计算机科学与技术专业怎么样?就业方向与就业前景分析...

热门文章

  1. 算法有偏见?总比人类识别强吧!
  2. 在职场中,长得漂亮真的有用吗?
  3. oracle如何往dg加盘_oracle 在物理机上添加磁盘操作
  4. android 版本28 通知栏图标,【专题分析】应用图标、通知栏适配
  5. linux删除第二列为空_Linux之基本文本处理工具(二)
  6. Java JSON对象怎么遍历_Java遍历JsonObject对象
  7. java虚拟机和javaGC_Java虚拟机(三):GC算法和种类
  8. jenkins换服务器找不到包,服务器重启后Jenkins项目部分丢失问题解决方法
  9. vue 一个组件内多个弹窗_论如何用Vue实现一个弹窗-一个简单的组件实现
  10. 1093芯片做正弦波逆变器_长途自驾游“缺电”如何选购正确车载逆变器,避开商家套路...