CF734F Anton and School 构造+数论
正解:构造
解题报告:
先放下传送门QwQ
这题首先要知道一个结论:(x&y)+(x|y)=x+y
还是能理解的趴?
所以我们把bi+ci就能得到∑a+n*a[i]
然后我们就能成功求出∑a
然后每个a就能求出来了
然后求出来之后再check下符不符合输入就欧克了!
哦关于那个check,如果一个个枚显然会超时
可以预处理每一位这么加,就从O(n2)变成O(n)辣!
484想通了不难!
等下写了代码放下代码就over辣!
太难过了,,,卡在了第六个测试点(修改之后卡在第五个了yep!
但我觉得我实在做得,zqsg地对,,,就很难过
布星我生气,不做这题了
upd:,,,布星这题是真的好
它给了我一个非常深刻的教训
如果不是为了卡时间还是开longlong趴
因为没开longlong没卡了两三天的事儿我会说:D?
#include<bits/stdc++.h>
using namespace std;
#define il inline
#define rg register
#define ll long long
#define rp(i,x,y) for(rg ll i=x;i<=y;++i) const ll N=+;
ll n,a[N],b[N],c[N],k[],sum; inline ll read()
{
rg ll x=;rg bool y=;rg char ch=getchar();
while(ch!='-' && (ch>'' || ch<''))ch=getchar();
if(ch=='-')ch=getchar(),y=;
while(ch>='' && ch<='')x=(x<<)+(x<<)+(ch^''),ch=getchar();
return y?x:-x;
}
inline bool chck()
{
rp(i,,n)
{
rg ll tmp1=,tmp2=;
rp(j,,)
{
if((a[i]>>j)&)tmp1+=(<<j)*k[j],tmp2+=(<<j)*n;
else tmp2+=(<<j)*k[j];
}
if(tmp1!=b[i] || tmp2!=c[i])return ;
}
return ;
} int main()
{
n=read();rp(i,,n)b[i]=read(),sum+=b[i];rp(i,,n)c[i]=read(),sum+=c[i];sum/=(n*);
rp(i,,n)a[i]=(b[i]+c[i]-sum)/n;
rp(i,,n)rp(j,,)if((a[i]>>j)&)++k[j];
if(chck()){printf("-1");return ;}
rp(i,,n)printf("%d ",a[i]);
return ;
}
,,,灵巧要心力交瘁了QAQ
CF734F Anton and School 构造+数论的更多相关文章
- CF734F Anton and School (构造)
\(solution\) : 这道题做法很巧妙,需要对位运算有足够了解: $( a $ & $ b )$ \(+\) $( a $ | $ b )$ \(=\) \(a+b\) ,所以有 \( ...
- CF45G Prime Problem 构造+数论
正解:构造+数论 解题报告: 传送门! maya这题好神仙啊我jio得,,,反正我当初听的时候是没有太懂的,,, 首先这题你要知道一些必要的数学姿势 比如哥德巴赫猜想巴拉巴拉的 然后直接讲题趴QAQ ...
- Codeforces 922F Divisibility (构造 + 数论)
题目链接 Divisibility 题意 给定$n$和$k$,构造一个集合$\left\{1, 2, 3, ..., n \right\}$的子集,使得在这个集合中恰好有$k$对正整数$(x, y) ...
- codeforces 487C C. Prefix Product Sequence(构造+数论)
题目链接: C. Prefix Product Sequence time limit per test 1 second memory limit per test 256 megabytes in ...
- CF #404 (Div. 2) D. Anton and School - 2 (数论+范德蒙恒等式)
题意:给你一个由'('和')'组成的字符串,问你有多少个子串,前半部分是由'('组成后半部分由')'组成 思路:枚举这个字符串中的所有'('左括号,它左边的所有'('左括号的个数为num1,它的右边的 ...
- CF909F AND-permutations 构造
正解:构造 解题报告: 传送门! QAQ我jio得还挺难的,,,构造+数论什么的果然还是不适合灵巧这种菜菜啊QAQ 不过理解了的话也就没有那么难?所以还是港下QAQ 首先看task1 首先要发现一个, ...
- BZOJ4833: [Lydsy1704月赛]最小公倍佩尔数(min-max容斥&莫比乌斯反演)(线性多项式多个数求LCM)
4833: [Lydsy1704月赛]最小公倍佩尔数 Time Limit: 8 Sec Memory Limit: 128 MBSubmit: 240 Solved: 118[Submit][S ...
- 【CF734F】Anton and School(构造)
[CF734F]Anton and School(构造) 题面 Codeforces 洛谷 题解 算是一道\(easy\)? 发现\((a\&b)+(a|b)=a+b\). 那么根据给定条件我 ...
- 【题解】 CF734F 【Anton and School】
题解 CF734F [Anton and School] 传送门 这种将位运算和普通运算结合起来的题目要拆位来考虑,可以得到\(log_{2}(\)值域\()\)的算法,甚至将值域看成常数. 根据 \ ...
随机推荐
- 新兵训练营课程——环境与工具Java[转]
原文地址:http://weibo.com/p/1001643874239169320051 程序员在开发过程中会用到很多工具来提升开发和协作效率,这次介绍的是目前微博平台在开发过程中用到的一些工具, ...
- hadoop 安装笔记
http://www.powerxing.com/install-hadoop/ 查询相关链接~!
- TTreeView TTreeNodes TTreeNode
TTreeView 填写 TTreeView 的内容一般是这样开始的(下图), 不过我觉得最好习惯用动态建立. 打个比方: 譬如 TreeView 是一个军营的"营部"! 这里会有 ...
- error C2065: “m_Pic”: 未声明的标识符
public: CPicture m_Pic; 要写在头文件里! 而不能是cpp文件的public里!
- angular学习(十五)——Provider
转载请写明来源地址:http://blog.csdn.net/lastsweetop/article/details/60966263 Provider简单介绍 每一个web应用都是由多个对象协作完毕 ...
- TCP处理主要开销
快速的网络TCP 通常受限 发送主机 与 接收主机. 而不是网络设备或协议本身的实现. TCP的处理的主要开销 分为中断操作.数据复制和协议处理. 1:中断操作 2:数据复制 3:协议处理 TCP的处 ...
- mybatis由浅入深day02_2一对一查询_2.3方法二:resultMap_resultType和resultMap实现一对一查询小结
2.3 方法二:resultMap 使用resultMap,定义专门的resultMap用于映射一对一查询结果. 2.3.1 sql语句 同resultType实现的sql SELECT orders ...
- 超全面的JavaWeb笔记day14<用户注册登录>
案例:用户注册登录 要求:3层框架,使用验证码 1 功能分析 l 注册 l 登录 1.1 JSP页面 l regist.jsp Ø 注册表单:用户输入注册信息: Ø 回显错误信息:当注册失败时,显示错 ...
- php学习十:继承
在php中,我们常常会定义许多类,当多个类里面的方法或者属性出现重复的时候,会常常造成代码重复和冗杂的弊端,这个时候,我们可以用到继承(extends) 继承的特性: * 1.子类可以扩充属性* 2. ...
- Spring学习笔记--注入Bean属性
这里通过一个MoonlightPoet类来演示了注入Bean属性property的效果. package com.moonlit.myspring; import java.util.List; im ...