http://codeforces.com/problemset/problem/734/F

x|y + x&y = x+y。

#include<iostream>
#include<cstdio>
#include<cstring>
#include<algorithm>
using namespace std; long long a[],b[],c[],num[] = {};
int n; int main()
{
scanf("%d",&n);
long long sum = ;
for(int i = ;i <= n;i++)
{
scanf("%I64d",&b[i]);
sum += b[i];
}
for(int i = ;i <= n;i++)
{
scanf("%I64d",&c[i]);
sum += c[i];
}
int flag = ;
if(sum%(*n)) flag = ;
else
{
sum /= *n;
for(int i = ;i <= n;i++)
{
long long t = b[i]+c[i];
if((t-sum)%n)
{
flag = ;
break;
}
else a[i] = (t-sum)/n;
}
}
if(flag)
{
for(int i = ;i <= n;i++)
{
for(int j = ;(<<j) <= a[i];j++)
{
if(a[i]&(<<j)) num[j]++;
}
}
for(int i = ;i <= n;i++)
{
long long t = ;
for(int j = ;(<<j) <= a[i];j++)
{
if(a[i]&(<<j)) t += num[j]*(1LL<<j);
}
if(t != b[i]) flag = ;
}
}
if(flag)
{
for(int i = ;i <= n;i++) printf("%I64d ",a[i]);
printf("\n");
}
else printf("-1\n");
return ;
}

Codeforces_734_F的更多相关文章

随机推荐

  1. 【Java基础总结】多线程

    1. 实现多线程的两种方式 //第一种:继承Thread类,重写run()方法 class ThreadTest1 extends Thread{ public void run(){ String ...

  2. 【Javascript函数】节流throttle和间隔控制dbounce

    一.throttle 函数节流,指把很小时间内触发的N多事件,节流成1个事件. 我们这里说的throttle就是函数节流的意思.再说的通俗一点就是函数调用的频度控制器,是连续执行时间间隔控制.主要应用 ...

  3. vue resource 携带cookie请求 vue cookie 跨域

    vue resource 携带cookie请求 vue cookie 跨域 1.依赖VueResource 确保已安装vue-resource到项目中,找到当前项目,命令行输入: npm instal ...

  4. Vmware下Ubuntu 14.04静态IP地址的设置方法

    一.环境 宿主机 Win 8.1 虚拟机工具 VMware 10.0 虚拟主机系统 Ubuntu 14.04   二.说明 这里需要注意的是:VMware对于VMnet8采用如下规则(192.168. ...

  5. eclipse maven工程错误总汇

    1.问题: Target runtime Apache Tomcat v7.0 is not defined 解决方法:           right click on your project & ...

  6. 【转】在Ubuntu下建立Eclipse的Android开发环境

    本文将介绍如何建立Ubuntu下基于Eclipse的Android开发环境的方法. 大部分的Android开发者都是使用Eclipse来开发Android,本文将向各位介绍一下建立Ubuntu下基于E ...

  7. cogs 176. [USACO Feb07] 奶牛聚会 dijkstra

    176. [USACO Feb07] 奶牛聚会 ★☆   输入文件:sparty.in   输出文件:sparty.out   简单对比时间限制:3 s   内存限制:16 MB 译: zqzas N ...

  8. request session

    例子 url = 'http://beanhome.com/user/login' header = { "Content-Type": 'application/json', & ...

  9. matplotlib 条形图

    一.特点 离散数据,数据之间没有直接的关系 二.分类 1.垂直条形图 bar(x, height, width=0.8) # x 为x轴 # height 为y轴 # width 为 条形图的宽度 例 ...

  10. Java入门 - 语言基础 - 16.数组

    原文地址:http://www.work100.net/training/java-array.html 更多教程:光束云 - 免费课程 数组 序号 文内章节 视频 1 概述 2 声明数组变量 3 创 ...