Codeforces Round #618 (Div. 1)A(观察规律)
2024-10-08 11:22:20
实际上函数值为x&(-y)
答案仅和第一个数字放谁有关
#define HAVE_STRUCT_TIMESPEC
#include <bits/stdc++.h>
using namespace std;
int a[];
int b[][];
int flag[];
int main(){
ios::sync_with_stdio(false);
cin.tie(NULL);
cout.tie(NULL);
int n;
cin>>n;
int start=;
int mx=;
for(int i=;i<=n;++i){
cin>>a[i];
int temp=a[i];
while(temp){
b[i][++b[i][]]=temp%;//转化为二进制
temp>>=;
}
for(int j=;j<=b[i][];++j)
if(b[i][j]!=)
++flag[j];//记录有多少数字这一位上是1
a[n+i]=a[i];
}
for(int i=;i<=n;++i){
int he=;
for(int j=;j<=b[i][];++j)
if(b[i][j]&&flag[j]==)//如果仅有a[i]这一位上为1,那么它放在顺序的第一个时可以为总和做出1<<(j-1)的贡献
he|=(1ll<<(j-));
if(he>mx){//更新最大值
mx=he;
start=i;
}
}
for(int i=start;i<=n-+start;++i)
cout<<a[i]<<" ";
return ;
}
最新文章
- 错误: 从内部类中访问本 地变量vvv; 需要被声明为最终类型
- 9月10日,美团网2014校招研发笔试哈尔滨站 1、链表翻转。给出一个链表和一个数k,比如链表1→2→3→4→5→6,k=2,则翻转后2→1→4→3→6→5,若k=3,翻转后3→2→1→6→5→4,若k=4,翻转后4→3→2→1→5→6,用程序实现
- 【002: NetBeans 的 代码补全】
- 最流行的JavaScript库jQuery不再支持旧版IE
- iOS - OC NSTimeZone		时区
- POJ 2318 TOYS (计算几何,叉积判断)
- C#反射技术的简单操作(读取和设置类的属性)
- 版本控制工具--GIT 基本命令(1)
- Android图像处理1
- silverlight visifire控件图表制作——silverlight 后台方法页面事件
- 怎么使用dreamweaver制作网页教程 dw建站设计网页
- JSSDK微信自定义分享
- 13: ELK(ElasticSearch+Logstash+ Kibana)搭建实时日志分析平台
- [转]win10中安装JDK8以及环境配置
- ARM内核版本号和SOC版本号
- MySQL 中,字符串 0 和数字 0 的区别
- JAVA发送http get/post请求,调用http接口、方法
- jQuery .each()方法与.data()方法
- 解决org.apache.rat:apache-rat-plugin:0.8:check (default) on project hbase: Too many unapproved license
- Using Custom Java code in ODI
热门文章
- Spring-Boot-2.0.0-M1版本将默认的数据库连接池从tomcat jdbc pool改为了hikari
- Linux安装Tomcat,解决不能访问Manager App
- JUC之CountDownLatch和CyclicBarrier的区别 (转)
- python | 网络编程(socket、udp、tcp)
- go语言 内置的椭圆数字签名及其验证算法
- 【15】【有点特殊的dp】 剪绳子
- java课后作业3
- PP: UMAP: uniform manifold approximation and projection for dimension reduction
- Python 入门【一】Python 初识及学习资料
- RemoteViews 整理