Day6-T2
原题目
给你一个长度为n的序列A,请求出最大的一对数(Ai ,Aj),使Ai&Aj最大。
第一行为n,接下来n行,每一个数表示Ai.
输出最大的“and”。
S1:
Input:
Output:
Describe:暴枚当然会T成狗,所以我们考虑剪枝
code:
#include<bits/stdc++.h>
#define INF 214748364
#define eps 1e-9
#define rep1(a,b) for(register long long i=(a);i<=(b);i++)
#define rep2(a,b) for(register long long j=(a);j<=(b);j++)
using namespace std;
long long a[500101],n,ans;
inline long long read(){
long long ret=0,f=1;char ch=getchar();
while (ch<'0'||ch>'9') {if (ch=='-') f=-f;ch=getchar();}
while (ch>='0'&&ch<='9') ret=ret*10+ch-'0',ch=getchar();
return ret*f;
}
inline double read2(){
double X=0,Y=1.0;long long w=0;char ch=0;
while(!isdigit(ch)){w|=ch=='-';ch=getchar();}
while(isdigit(ch))X=X*10+(ch^48),ch=getchar();
ch=getchar();
while(isdigit(ch)) X+=(Y/=10)*(ch^48),ch=getchar();
return w?-X:X;
}
inline void write(long long x){
if(x<0){putchar('-');write(-x);return;}
if(x/10) write(x/10);putchar(x%10+'0');
}
int main(){
//freopen("carpet.in","r",stdin);
//freopen("carpet.out","w",stdout);
n=read();
for(int i=1;i<=n;i++)a[i]=read();
sort(a+1,a+n+1);for(int i=1;i<n;i++)if(a[i]==a[i+1])ans=a[i]; //如果两个数相等,至少是这两个数的值。[从小到大--SORT]
for(int i=n;i>=1;i--){ //从大到小枚以便剪枝
for(int j=n;j>=i+1;j--){ //同上
if(a[j]<=ans)break; //若A<B,则A&C[C∈R]<=A<B
ans=max(ans,a[i]&a[j]); //取最大值
}
if(a[i]<=ans)break; //嗯哼
}
write(ans);
return 0;
}
Day6-T2的更多相关文章
- XJOI网上同步训练DAY6 T2
思路:记得FJ省队集训好像有过这题,可是我太弱了,根本不懂T_T #include<cstdio> #include<iostream> #include<cmath&g ...
- 雅礼集训 Day6 T2 Equation 解题报告
Equation 题目描述 有一棵\(n\)个点的以\(1\)为根的树,以及\(n\)个整数变量\(x_i\).树上\(i\)的父亲是\(f_i\),每条边\((i,f_i)\)有一个权值\(w_i\ ...
- Python之路,Day6 - Python基础6
本节大纲: 模块介绍 time &datetime模块 random os sys shutil json & picle shelve xml处理 yaml处理 configpars ...
- python笔记 - day6
python笔记 - day6 参考: http://www.cnblogs.com/wupeiqi/articles/5501365.html 大纲: 利用递归,实现阶乘: Python反射 pyt ...
- Day6 - Python基础6 面向对象编程
Python之路,Day6 - 面向对象学习 本节内容: 面向对象编程介绍 为什么要用面向对象进行开发? 面向对象的特性:封装.继承.多态 类.方法. 引子 你现在是一家游戏公司的开发 ...
- Day3:T1数论+高精 T2搜索
T1:数论+高精(水~) 根据题意可知,从除的数越大越好(在0~9中) 所以我们只要用到高精除然后再模拟一下就可以了 //MARK:但是要注意0-9这个特殊值需要特判,因为题目要求输出的数至少是两位数 ...
- 转:Python之路,Day6 - 面向对象学习
这篇文章写的不错,转来收了 转自:http://www.cnblogs.com/alex3714/articles/5188179.html 本节内容: 面向对象编程介绍 为什么要用面向对象进 ...
- Python-模块使用-Day6
Python 之路 Day6 - 常用模块学习 本节大纲: 模块介绍time &datetime模块randomossysshutiljson & picleshelvexml处理ya ...
- 考前停课集训 Day6 垒
Day 6 今天在家里的 家里蹲 其实是day7的时候想到要写day6了 草率补充一下 NOIP考前棕名退不掉咯 你觉得我还会打洛谷的题目吗? 依然退步 没用心 T1 分火腿 数论题 我感觉挺难的 T ...
- Day6 Python常用的模块
一.logging模块 一.日志级别 critical=50 error=40 waring=30 info=20 debug=10 notset=0 二.默认的日志级别是waring(30),默认的 ...
随机推荐
- 最全Python学习路线图【2020最新版】
2020年最新的python学习大纲,专为python高薪打造另外很多人在学习Python的过程中,往往因为没有好的教程或者没人指导从而导致自己容易放弃,为此我建了个Python交流.裙 :一久武其而 ...
- springMVC是如何实现参数封装和自动返回Json的
HTTP 请求和响应是基于文本的,意味着浏览器和服务器通过交换原始文本进行通信.但是,使用 Spring,controller 类中的方法返回纯 ‘String’ 类型和域模型(或其他 Java 内建 ...
- 关于java自学的内容及感受
这周自学了关于java类的知识,进度有点慢,需要抓紧学习剩下的知识,放假后由于自制力差而各种玩没有认认真真的学习,下周要认真的学习之后的进度,争取开学玩全部完成! /** * 动物的类 * */pub ...
- WebService-CXF 学习笔记
什么是CXF Apache CXF = Celtix + Xfire支持多种协议:SOAP1.1,1.2XML/HTTPCORBA(Common Object Request Broker Archi ...
- 关于盒模型的外边距padding和内边距margin
边框border属性值 solid实线 dashed虚线 dotted点线 double双实线 /* 内边距 */padding:20px 30px 30px 30px;若有四个值代表 ...
- LNMP一键安装包 PHP自动升级脚本
LNMP一键安装包 PHP自动升级脚本 2011年03月15日 上午 | 作者:VPS侦探 前一段时间完成了lnmp一键安装包的PHP自动升级脚本,今天发布出来,如果想升级PHP版本的lnmp用户可以 ...
- ubuntu18.04下安装node
安装Node.js Ubuntu 18.04在其默认存储库中包含一个版本的Node.js,可用于在多个系统间提供一致的体验. 在撰写本文时,存储库中的版本是8.10.0. 这不会是最新的版本,但它应该 ...
- JavaScript 中 new 关键字结合构造函数创建对象
步骤: new会在内存中创建一个新的空对象 new 会让this指向这个新的对象 执行构造函数(给这个新对象添加属性和方法) new会返回这个新对象
- 吴裕雄 Bootstrap 前端框架开发——Bootstrap 辅助类:在元素获取焦点时显示(如:键盘操作的用户)
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title> ...
- Firefox中有时使用window.close()脚本无法关闭当前窗口
解决方法如下: 1.在Firefox浏览器的地址栏中输入about:config,即打开Firefox的配置页面 2.然后搜索dom.allow_scripts_to_close_windows,找到 ...