Codeforces Round #371 (Div. 2) B. Filya and Homework
来源:互联网 发布:网络文件传输协议 编辑:程序博客网 时间:2024/06/04 18:30
题目点我点我点我
题目大意:询问是否存在x能够令数组里一些数加上它一次或减去它一次或不作变化后数组里所有元素相等。
解题思路:最多有数组里有3种数才有可能实现,若多于3种数无论怎样最后都不能相等,然后剩下就是分类讨论的事了。
/* ***********************************************┆ ┏┓ ┏┓ ┆┆┏┛┻━━━┛┻┓ ┆┆┃ ┃ ┆┆┃ ━ ┃ ┆┆┃ ┳┛ ┗┳ ┃ ┆┆┃ ┃ ┆┆┃ ┻ ┃ ┆┆┗━┓ 马 ┏━┛ ┆┆ ┃ 勒 ┃ ┆ ┆ ┃ 戈 ┗━━━┓ ┆┆ ┃ 壁 ┣┓┆┆ ┃ 的草泥马 ┏┛┆┆ ┗┓┓┏━┳┓┏┛ ┆┆ ┃┫┫ ┃┫┫ ┆┆ ┗┻┛ ┗┻┛ ┆************************************************ */#include <stdio.h>#include <string.h>#include <iostream>#include <algorithm>#include <vector>#include <queue>#include <stack>#include <set>#include <map>#include <string>#include <math.h>#include <stdlib.h>#include <bitset>using namespace std;#define rep(i,a,b) for (int i=(a),_ed=(b);i<=_ed;i++)#define per(i,a,b) for (int i=(b),_ed=(a);i>=_ed;i--)#define pb push_back#define mp make_pairconst int inf_int = 2e9;const long long inf_ll = 2e18;#define inf_add 0x3f3f3f3f#define mod 1000000007#define LL long long#define ULL unsigned long long#define MS0(X) memset((X), 0, sizeof((X)))#define SelfType intSelfType Gcd(SelfType p,SelfType q){return q==0?p:Gcd(q,p%q);}SelfType Pow(SelfType p,SelfType q){SelfType ans=1;while(q){if(q&1)ans=ans*p;p=p*p;q>>=1;}return ans;}#define Sd(X) int (X); scanf("%d", &X)#define Sdd(X, Y) int X, Y; scanf("%d%d", &X, &Y)#define Sddd(X, Y, Z) int X, Y, Z; scanf("%d%d%d", &X, &Y, &Z)#define reunique(v) v.resize(std::unique(v.begin(), v.end()) - v.begin())#define all(a) a.begin(), a.end()typedef pair<int, int> pii;typedef pair<long long, long long> pll;typedef vector<int> vi;typedef vector<long long> vll;inline int read(){int ra,fh;char rx;rx=getchar(),ra=0,fh=1;while((rx<'0'||rx>'9')&&rx!='-')rx=getchar();if(rx=='-')fh=-1,rx=getchar();while(rx>='0'&&rx<='9')ra*=10,ra+=rx-48,rx=getchar();return ra*fh;}//#pragma comment(linker, "/STACK:102400000,102400000")int a[100005];int main(){//freopen("in.txt","r",stdin);//freopen("out.txt","w",stdout);ios::sync_with_stdio(0);cin.tie(0);int n;n = read();for(int i=1;i<=n;i++) a[i] = read();sort(a+1,a+1+n);if(a[1]==a[n])printf("YES\n");else { int x,y; for(int i=2;i<=n;i++) { if(a[i]!=a[1]) { x = i; break; } } for(int i=n-1;i>=1;i--) { if(a[n]!=a[i]) { y = i; break; } } if(x>y)printf("YES\n"); else if(a[x]!=a[y])printf("NO\n"); else if(a[x]-a[1]==a[n]-a[x])printf("YES\n"); else printf("NO\n"); }return 0;}
0 0
- Codeforces Round #371 (Div. 2) B. Filya and Homework
- Codeforces Round #371 (Div. 2)B. Filya and Homework
- Codeforces Round #371 (Div. 2) B. Filya and Homework
- Codeforces Round #371 (Div. 2)B. Filya and Homework
- Codeforces Round #371 (Div. 2) B-Filya and Homework【思维】
- Codeforces Round #371 (Div. 2) B. Filya and Homework(水题 分类讨论)
- Codeforces Round #371 (Div. 2) B. Filya and Homework STL(map or set)
- Codeforces Round #371 (Div. 2) B. Filya and Homework(水题)
- Codeforces #371(Div.2)B. Filya and Homework【思维】
- Codeforces 371B - Filya and Homework(思维)
- codeforces#371 B.Filya and Homework
- Filya and Homework(CF #371 Div. 2)
- B. Filya and Homework
- CF #371 div2 B. Filya and Homework
- Codeforces Problem 714B Filya and Homework(分类讨论)
- codeforces 714B Filya and Homework (水)
- CodeForces 714B. Filya and Homework(模拟)
- CodeForces 712D Filya and Homework
- 安卓自定义View进阶-Matrix Camera
- uc/os-III任务管理总结
- C/C++ char或byte数组转化为int或int数组
- UML类图各箭头之间的关系
- 走近微软安全技术Shim
- Codeforces Round #371 (Div. 2) B. Filya and Homework
- switch语句的表达式要求
- web app禁用手机浏览器缓存
- [电影]《指环王》新老三部曲完全赏析(双塔)
- 几种服务器模型对比分析
- JSP页面编译时遇到Propertty 'XXX' not found on type java.lang.String错误的解决办法
- Tyvj1754 BZOJ1085[SCOI2005]骑士精神
- cocos2d-js 类之家传递事件的方法
- Leetcode 52 N-Queens II