【众数】【bzoj 2945】: [Poi2000]气垫船
2015-01-04 12:04
232 查看
http://www.lydsy.com/JudgeOnline/problem.php?id=2945
结论看代码,证明自己构造。。。
~~~
用了一个经典算法——求出现次数大于n/2的数
结论看代码,证明自己构造。。。
~~~
用了一个经典算法——求出现次数大于n/2的数
#define _TEST _TEST #include <cstdio> #include <cstring> #include <cstdlib> #include <iostream> #include <cmath> #include <algorithm> using namespace std; /************************************************ Code By willinglive Blog:http://willinglive.cf ************************************************/ #define rep(i,l,r) for(int i=(l),___t=(r);i<=___t;i++) #define per(i,r,l) for(int i=(r),___t=(l);i>=___t;i--) #define MS(arr,x) memset(arr,x,sizeof(arr)) #define LL long long #define INE(i,u,e) for(int i=head[u];~i;i=e[i].next) inline const int read() {int r=0,k=1;char c=getchar();for(;c<'0'||c>'9';c=getchar())if(c=='-')k=-1; for(;c>='0'&&c<='9';c=getchar())r=r*10+c-'0';return k*r;} ///////////////////////////////////////////////// int n; int a[1000010]; ///////////////////////////////////////////////// ///////////////////////////////////////////////// void solve() { n=read(); int cnt=0,mx,x; rep(i,1,n) { if(cnt==0) a[i]=mx=read(),cnt=1; else { a[i]=x=read(); cnt+=mx==x?1:-1; } } cnt=0; bool f1=0,f2=0; rep(i,1,n) if(mx==a[i]) cnt++; else if(a[i]<mx) f1=1; else f2=1; if(cnt<=n/2) puts("TAK"); else if((n&1)&&(cnt==(n+1)/2)&&(f1+f2==1)) puts("TAK"); else puts("NIE"); } ///////////////////////////////////////////////// int main() { #ifndef _TEST freopen("std.in","r",stdin); freopen("std.out","w",stdout); #endif rep(i,1,read()) solve(); return 0; }
相关文章推荐
- BZOJ 2946: [Poi2000]公共串 后缀数组
- BZOJ2947: [Poi2000]促销
- 【二分答案】【哈希表】【字符串哈希】bzoj2946 [Poi2000]公共串
- bzoj千题计划260:bzoj2940: [Poi2000]条纹
- bzoj2946 [Poi2000]公共串(SA,SAM)
- 【BZOJ】【P2946】【Poi2000】【公共串】【题解】【hash】
- bzoj 2938: [Poi2000]病毒
- 【二分答案+智障的字符串hash】BZOJ2946-[Poi2000]公共串(Ranklist倒一达成!!!!!)【含hash知识点】
- 【BZOJ】【2940】【POI2000】条纹
- BZOJ 2946 [Poi2000]公共串 后缀自动机
- [bzoj2946][后缀数组][Poi2000]公共串
- Bzoj2946:[POI2000] 最长公共子串
- [BZOJ2946][Poi2000]公共串解题报告|后缀自动机
- BZOJ 2938: [Poi2000]病毒 AC自动机
- 后缀自动机 模板 【Poi2000】 公共串 bzoj 2946
- [BZOJ2946][Poi2000]公共串 后缀自动机
- 【BZOJ】【2946】【POI2000】公共串
- Bzoj2946:[POI2000] 最长公共子串
- [BZOJ]2938 [POI2000] 病毒 AC自动机
- bzoj2946 [Poi2000]公共串