GCD XOR UVA - 12716 ——筛法建立约数表+xor运算+数学规律
Think:
1埃式筛法思想建立约数表
2初始打表寻找运算的数学规律
3xor运算(不带进位的二进制加法)
运算法则
1. a ⊕ a = 0
2. a ⊕ b = b ⊕ a
3. a ⊕b ⊕ c = a ⊕ (b ⊕ c) = (a ⊕ b) ⊕ c;
4. d = a ⊕ b ⊕ c 可以推出 a = d ⊕ b ⊕ c.((a^b) == c <=> a(a^c) == b)
5. a ⊕ b ⊕ a = b.
6.若x是二进制数0101,y是二进制数1011;
则x⊕y=1110
只有在两个比较的位不同时其结果是1,否则结果为0
即“两个输入相同时为0,不同则为1”!
xor运算——百度百科链接
vjudge题目链接
以下为Accepted代码
/*
1打表发现数学规律gcd(a, b) == (a^b) => (a-b) == (a^b)
2筛法思想建立约数表
3xor运算:(a^b) = c <=> (a^c) = b;
*/
#include <cstdio>
#include <cstring>using namespace std;int v[30000004] = {0};int main(){int a, b, c;///筛法思想建立约数表for(c = 1; c <= 15000000; c++){for(a = c + c; a <= 30000000; a += c){b = a - c;if(c == (a^b))v[a]++;}}///now:v[a]:(a, xi);for(int i = 2; i <= 30000000; i++){v[i] += v[i-1];}///now:v[a]:(ai, xi);int T, k, n;scanf("%d", &T);for(k = 1; k <= T; k++){scanf("%d", &n);printf("Case %d: %d\n", k, v[n]);}return 0;
}
GCD XOR UVA - 12716 ——筛法建立约数表+xor运算+数学规律相关推荐
- #题目:GCD XOR UVA - 12716
题目描述 Given an integer N, find how many pairs (A, B) are there such that: gcd(A, B) = A xor B where 1 ...
- UVA 12716 GCD XOR(数论+枚举+打表)
题意:给你一个N,让你求有多少组A,B, 满足1<= B <= A <= N, 且 gcd(A,B) = A XOR B. 思路:首先我们能够得出两个结论: A-B > ...
- 筛法打印质数表【附:100000以内质数表】
发现在做ACM题目的时候经常会用到一些质数,因此使用埃拉托斯特尼筛法打印质数表以保存之. 埃氏筛或爱氏筛,是一种公元前250年由古希腊数学家埃拉托斯特尼所提出的一种简单检定素数的算法. 给出要筛数值的 ...
- GCD LCM UVA - 11388 (思维。。水题)
两个数的最小公倍数和最大公约数肯定是倍数关系 然后又让求使得a最小 因为 a = m * gcd 令m = 1 时 a取得最小 即gcd 则b = lcm #include <iostrea ...
- 紫书 习题 10-17 UVa 11105 (筛法)
类似于素数筛的思想去做,不然暴力会超时而且还要判重 #include<cstdio> #include<cstring> #include<vector> #def ...
- 数理统计(数值修约、0.5修约、0.2修约、有效数字运算、平均值、中位数、极差、标准差、变异系数)
一.数值修约: 口诀:四舍六入五考虑,五后非零则进一,五后皆零看奇偶,奇进偶舍不连续. 1.15保留一位小数:1.15=1.2(五后非零 看五前面是奇数还是偶数,1是奇数,所以进1位=1.2) 1.1 ...
- mysql xor详细_PHP MySQL应用中使用XOR运算加密算法分享
XOR算法原理 从加密的主要方法看,换位法过于简单,特别是对于数据量少的情况很容易由密文猜出明文,而替换法不失为一种行之有效的简易算法. 从各种替换法运算的特点看,异或运算最适合用于简易加解密运算,这 ...
- 10行代码AC——UVA 11538-Chess Queen(数学规律+数列,附详细讲解)
励志用尽量少的代码做高效表达 提交(题目)连接-->UVA-11538 题目大意 求在n*m棋盘上放2个不一样的皇后,且他们相互攻击的方案数,也就是说,求2个不同的皇后在同一行.同一列或同一对角 ...
- 10行代码AC——UVa 10940(Throwing cards away II 数学规律+约瑟夫环)
励志用尽量少的代码做高效表达 题目(提交)链接-->UVa-10940 问题分析 本题的时间要求是3s,但极限数据量为50W*50W,一般来说,3s的时间只能支持不到三千万次的运算,也就是说,即 ...
最新文章
- 深度研报:六大视角解读人工智能,AI岂止于技术
- tf2.0环境下“module ‘tensorflow‘ has no attribute ‘log‘”的解决办法
- 转: 用 Eclipse 平台进行 C/C++ 开发
- 学计算机辅修什么专业好,女生计算机辅修什么专业好
- 50-000-040-配置-MAC 安装MySQL my.cnf配置文件
- 小游戏开发--Cocos引擎
- c语言程序设计 cap 翁恺,GPS数据处理 翁恺老师C语言程序设计CAP第10章编程题
- Jmeter多机联合产生负载 (转)
- jQuery 帮助文档 api
- QCIF、CIF、DCIF、D1分辨率是多少
- 红外接收管硬件电路曲折的调试过程,错误的使用过程记录
- 方舟生存计划怎么删除服务器信息,方舟服务器怎么删除玩家数据 | 手游网游页游攻略大全...
- linux跟单片机的区别,树莓派和单片机的区别
- win10系统 开启蓝牙服务器,Win10打开蓝牙的方法步骤详解
- Redis详解之特殊数据类型GEO及底层数据结构
- 2021年安全员-A证考试内容及安全员-A证模拟考试
- 北师大 外国教育史-6(新教育运动)
- 圣杯布局详解--浮动
- objdump(Linux)反汇编命令使用指南
- Tentative new functions in R13B