定义一个函数f(x,y), f(x,y) = x|y - y,给你一个数列,a1,a2,,an问如何排列能使f(f(f(a1,a2),a3),````,an)答案最大,我们将f(x,y)变形,就是f(x,y)=x&(~y),那么答案的大小只与第一个选取的x有关,其余都是取反交,那我们只要找出一个最大的x,让他的最高位为1,其他数的该位为0,这样下来答案至少就是该位对应的二进制码,例如 01010, 10000, 10001,我们就选择01010为最大,答案至少就为01000,根据数据限制,位数最多为30,时间复杂度就是O(30*1e5)

#include<bits/stdc++.h>
using namespace std;
#define lowbit(x) ((x)&(-x))
typedef long long LL; int bit[]; void getbit(int x) {
int cnt = ;
while(x) {
if(x&) bit[cnt]++;
cnt++;
x/=;
}
} void run_case() {
int n;
cin >> n;
vector<int> buf(n);
for(int i = ; i < n; ++i) {
cin >> buf[i];
getbit(buf[i]);
}
for(int k = ; k >= ; --k)
if(bit[k] == ) {
for(int i = ; i < n; ++i)
if(buf[i]&(<<k)) {
cout << buf[i] << " ";
for(int j = ; j < n; ++j)
if(j != i) cout << buf[j] << " ";
return;
}
}
for(auto c:buf) cout << c << " ";
} int main() {
ios::sync_with_stdio(false), cin.tie();
//int t; cin >> t;
//while(t--)
run_case();
cout.flush();
return ;
}

Codeforces1300C-Anu Has a Function的更多相关文章

  1. Codeforces Round #618 (Div. 2)C. Anu Has a Function

    Anu has created her own function ff : f(x,y)=(x|y)−y where || denotes the bitwise OR operation. For ...

  2. Codeforces 1299A/1300C - Anu Has a Function

    题目大意: 给定一种函数F(x,y)=(x|y)-y,| 即按位或运算 给定一个长度为n的数组a[1],a[2],a[3]...a[n] 可以重新排列数组a,使得 F ( ...... F ( F ( ...

  3. Codeforces Round #618 (Div. 2)

    题库链接 https://codeforces.ml/contest/1300 A. Non-zero 一个数组,每次操作可以给某个数加1,让这个数组的积和和不为0的最小操作数 显然如果有0的话,必须 ...

  4. CF #618 div.2

    序 闲来无事,打场CF,本人蒟蒻,考场A了前三道,第四有解答 正文 T1 Non-zero 是道水题.... 给你一个序列a.要求你输出最少的操作次数使这个序列的累和与累乘都不为0: 一次操作指给\( ...

  5. Codeforces Round #618 (Div. 2) 小号上紫之路

    这一场涨了不少,题也比较偏思维,正好适合我 A. Non-zero 我们记录这些数字的总和sum,并且记录0的个数zero,显然答案应该是这些0的个数,注意如果sum+zero==0的话答案要额外加一 ...

  6. [CF百场计划]#2 Codeforces Round #618 (Div. 2)

    A. Non-zero Description: Guy-Manuel and Thomas have an array \(a\) of \(n\) integers [\(a_1, a_2, \d ...

  7. Codeforces题解集 1.0

    记录 Codeforces 2019年12月19日到 2020年2月12日 的部分比赛题 Educational Codeforces Round 82 (Rated for Div. 2) D Fi ...

  8. 通过百度echarts实现数据图表展示功能

    现在我们在工作中,在开发中都会或多或少的用到图表统计数据显示给用户.通过图表可以很直观的,直接的将数据呈现出来.这里我就介绍说一下利用百度开源的echarts图表技术实现的具体功能. 1.对于不太理解 ...

  9. 发布高性能迷你React框架anu

    anu, 读作[安努],原意为苏美尔的主神. anu是我继avalon之后又一个新框架(github仓库为https://github.com/RubyLouvre/anu, 欢迎加星与试用) 此框架 ...

  10. 利用React/anu编写一个弹出层

    本文将一步步介绍如何使用React或anu创建 一个弹出层. React时代,代码都是要经过编译的,我们很多时间都耗在babel与webpack上.因此本文也介绍如何玩webpack与babel. 我 ...

随机推荐

  1. 接口测试,如何构建json类型的参数值

    1.json类型参数传入,实际传输的时候是转化为一中字符串类型的格式,所以如data=”{}”,该参数用引号包含传入,“{}”里面的key都应该为双引号,value为字符串的也应该是双引号,最后一个v ...

  2. 【译】高级T-SQL进阶系列 (七)【上篇】:使用排序函数对数据进行排序

    [译注:此文为翻译,由于本人水平所限,疏漏在所难免,欢迎探讨指正] 原文链接:传送门. 什么是排序函数(Ranking Functions)? 排序函数基于一组记录的集合返回一个排序值.一个排序值其实 ...

  3. 05-Docker-Container资源限制

    目录 05-Docker-Container资源限制 参考 可压缩性 MEM限制 选项说明 压测示例 CPU限制 选项说明 压测示例 05-Docker-Container资源限制 Docker Ve ...

  4. Top 9 colleges in the world from 2010 to 2020, AI and interdisciplinary areas.

    http://csrankings.org/

  5. angular9 学习笔记

    前言: AngularJS作为Angular的最早版本,2010年发布其初始版本,至今已经10年了.除了这个最初版本(没学过),项目上一直从2.x 到至今项目使用8.x版本,现在Angular在201 ...

  6. Django框架之模板路径及静态文件路径配置

    内容: (1)模板文件路径的配置 (2)静态文件路径的配置 一.模板文件路径的配置 模板文件主要通过jinja2模板进行渲染html页面,实现动态页面. 步骤一:创建一个template的文件夹,用于 ...

  7. 【代码总结】MYSQL数据库的常见操作

    ============================== MYSQL数据库的常见操作 ============================== 一.mysql的连接与关闭 -h:指定所连接的服 ...

  8. Codeforce 977E Cyclic Components

    dfs判断图的连通块数量~ #include<cstdio> #include<algorithm> #include<vector> #include<cs ...

  9. Golang核心编程

    源码地址: https://github.com/mikeygithub/GoCode 第1章 1Golang 的学习方向 Go 语言,我们可以简单的写成 Golang 1.2Golang 的应用领域 ...

  10. USER 指定当前用户,希望以某个已经建立好的用户来运行某个服务进程,不要使用 su 或者 sudo,这些都需要比较麻烦的配置,而且在 TTY 缺失的环境下经常出错。建议使用 gosu

    USER 指定当前用户 格式:USER <用户名>[:<用户组>] USER 指令和 WORKDIR 相似,都是改变环境状态并影响以后的层.WORKDIR 是改变工作目录,US ...