项目编号:bzoj-1000

项目等级:Keter

项目描述:

  鉴于该项目的奇特性质,任何拥有Administrator以下权限者均不予查看项目描述。如有违反,将导致AwD成功突破Site bzoj收容【数据删除】并引发XK级世界末日情景。

特殊收容措施:

  恩。。貌似还没有人写过这题的题解。。那我就来蛤基一波吧。

  作为bzoj上唯一对新人友好的题,1000的解法也是多种多样的,主要有以下解法:

1.模拟法

2.汇编法

3.网络流法

4.二进制法

。。。

  好,我们来分析一下各种解法的优劣性:

1.模拟法

  时间复杂度:O(1)

  空间复杂度:与语言有关

  这个没什么好说的,只要掌握基本的读入输出与+运算符就可以了。

Pascal:

 var a,b:longint;
begin
read(a,b); writeln(a+b);
end.

C++:

 #pragma GCC optimize(2)
#define __function__(type) __attribute__((optimize("-O2"))) inline type
#define __procedure__ __attribute__((optimize("-O2"))) inline void
using namespace std; //quick_io {
#include <cctype>
#include <cstdio> __function__(long long) getint()
{
char c=getchar(); for(;!isdigit(c)&&c!='-';c=getchar());
short s=; for(;c=='-';c=getchar()) s*=-; long long r=;
for(;isdigit(c);c=getchar()) r=(r<<)+(r<<)+c-''; return s*r;
}
//} quick_io int main()
{
return printf("%lld\n",getint()+getint()),;
}

Python2:

 print eval(raw_input().replace(' ','+'))

Python3:

 print sum(map(int,input().split()))

2.汇编法

  时间复杂度:O(1)

  空间复杂度:O(1)

  额,其实内嵌汇编我也不太会,大家可以去尝试一下在g++后加参数-S输出C++的汇编代码,至于其他语言。。

3.网络流法

  时间复杂度:与建图有关,一般认为O(1)

  空间复杂度:与建图有关

  这里说一个最简单的建图:从S到T连两条边,容量分别为a和b的值,然后。。流流流!

4.二进制法

  时间复杂度:O(1)

  空间复杂度:O(1)

  我们可以证明a+b=(a|b)+(a&b):

  显然,对于a和b的任一二进制位ai,bi,ai+bi=(ai|bi)+(ai&bi),证明如下:

  ai=bi=0时,0+0=(0|0)+(0&0)=0

  ai=bi=1时,1+1=(1|1)+(1&1)=2

  ai^bi=0时,1+0=(1|0)+(1&1)=1

  于是,∑(ai+bi)*2i=a+b=(a|b)+(a&b)=∑((ai|bi)+(ai&bi))*2i(0<=i<log2(max(a,b)))

  证毕。

C++:

 #include <cstdio>
using namespace std;
int a,b;
int main()
{
return scanf("%d%d",&a,&b),printf("%d\n",(a|b)+(a&b)),;
}

SCP-bzoj-1000的更多相关文章

  1. bzoj 1000 A+B Problem (And also my first experience of Emacs)

    problem:https://www.lydsy.com/JudgeOnline/problem.php?id=1000 This is my first code under Emacs! #in ...

  2. BZOJ 1000: A+B Problem

    问题:A + B问题 描述:http://acm.wust.edu.cn/problem.php?id=1000&soj=0 代码示例: import java.util.Scanner; p ...

  3. BZOJ 1000 A+B Problem (I/O)

    #include<cstdio> int main(){ int a,b; scanf("%d%d",&a,&b); printf("%d&q ...

  4. scp和rsync限制传输速度

    1.scp 限速100KB/s scp -l 1000 test root@192.168.1.104 此时的传输速率就是1M/8=100KB左右 2.rsync 限速100KB/s rsync -a ...

  5. scp与rsync限速

    一/scp限速1M #scp -l 1000 文件名 账号@远程机器IP此时的传输速率就是1M/8=100K左右 二/rsync是(限制为 100k Bytes/s): #rsync -auvzP-- ...

  6. 【BZOJ】【1150】【CTSC2007】数据备份Backup

    堆/贪心 一共N-1个元素……用堆维护最大值,取了第x个元素以后,插入v[x-1]+v[x+1]-v[x]这个元素,如果再取这个新元素就表示不取x,而取x-1和x+1……大概就是这种“带反悔”的思路吧 ...

  7. 【BZOJ】【1041】【HAOI2008】圆周上的点

    数学 orz hzwer 完全不会做…… 很纠结啊,如果将来再遇到这种题,还是很难下手啊…… 引用题解: [分析]: 样例图示: 首先,最暴力的算法显而易见:枚举x轴上的每个点,带入圆的方程,检查是否 ...

  8. 【BZOJ】【1061】【NOI2008】志愿者招募

    网络流/费用流 OrzOrzOrz,这题太神了不会捉. 题解:https://www.byvoid.com/blog/noi-2008-employee/ 这道题正确的解法是构造网络,求网络最小费用最 ...

  9. scp源码浅析

    背景: 经常使用scp传文件,发现它真的很给力,好奇心由来已久! 恰好接到一个移植SSH服务到专有网络(非IP网络)的小任务,完成工作又能满足好奇心,何乐而不为! 我只从源码浅浅的分析一下,后续有更多 ...

  10. 【POJ】【1637】Sightseeing tour

    网络流/最大流 愚人节快乐XD 这题是给一个混合图(既有有向边又有无向边),让你判断是否有欧拉回路…… 我们知道如果一个[连通]图中每个节点都满足[入度=出度]那么就一定有欧拉回路…… 那么每条边都可 ...

随机推荐

  1. Mybatis调用Oracle中的存储过程和function

    一.Mybatis调用存储过程 1 在数据库中创建以下的存储过程create or replace procedure pro_hello(p_user_name in varchar2,p_resu ...

  2. 【转】SpringMVC整合websocket实现消息推送及触发

    1.创建websocket握手协议的后台 (1)HandShake的实现类 /** *Project Name: price *File Name:    HandShake.java *Packag ...

  3. Shiro学习(6)Realm整合

    6.1 Realm [2.5 Realm]及[3.5 Authorizer]部分都已经详细介绍过Realm了,接下来再来看一下一般真实环境下的Realm如何实现. 1.定义实体及关系 即用户-角色之间 ...

  4. Vue源码------------- 数据响应系统的基本思路

    在 Vue 中,我们可以使用 $watch 观测一个字段,当字段的值发生变化的时候执行指定的观察者,如下: var vm = new Vue({ data: { num:1 } }) vm.$watc ...

  5. AcWing 197. 阶乘分解 (筛法)打卡

    给定整数 N ,试把阶乘 N! 分解质因数,按照算术基本定理的形式输出分解结果中的 pipi 和 cici 即可. 输入格式 一个整数N. 输出格式 N! 分解质因数后的结果,共若干行,每行一对pi, ...

  6. Linux c基本知识整理

    1.指针和引用的区别 1.指针是一个变量,变量存储一个地址指向内存中一个存储单元,需要单独分配内存空间.引用相当于变量的别名,不需要单独分配空间 2.引用必须初始化,指针可以先不进行初始化 3.指针可 ...

  7. 【SVN】提交报错:×××文件is not under version control

    解决方法:1.删除出错的文件,然后在出错文件所在文件夹执行还原操作 2.VS中可将文件先排除在项目外,再包含在项目内,即可正常提交

  8. git分布式版本控制系统权威指南学习笔记(二):git add暂存区的三个状态以及暂存区的理解

    文章目录 不经过git add(到暂存区),能直接进行commit吗? 举个

  9. vue组件通信之父组件主动获取子组件数据和方法

    ref 可以用来获取到dom节点,如果在组件中应用,也可以用来获取子组件的数据和方法. 比如,我定义了一个home组件,一个head组件,home组件中引用head组件. 此时,home组件是head ...

  10. 剑指offer——41数组中出现次数超过一半的数字

    题目描述 数组中有一个数字出现的次数超过数组长度的一半,请找出这个数字.例如输入一个长度为9的数组{1,2,3,2,2,2,5,4,2}.由于数字2在数组中出现了5次,超过数组长度的一半,因此输出2. ...