这道题开始想了好久都没想到  后来无意间看白皮书  突然发现居然是书里面的样题   以前都没发现

题意

给定一个整数n  问有多少对整数对(a,b)满足gcd(a,b) = a ^b

说一下思路吧   首先  a^b = c  则a^c = b  第一种办法就是枚举a 和 c然后算b = a^c最后验证一下是否有gcd(a,b) = c  白皮书上还给了一个证明  a-b <= a^b a-b >= c  假设存在c使得a-b > c则c < a-b <= a^b   与c = a^b矛盾  有了这个结论以后  可以在时间上进一步的优化  直接枚举a和c省略了gcd

代码如下

#include <cstdio>
#include <iostream>
#include <cmath>
#include <string>
using namespace std;
#define maxn 30000010
int ans[maxn];
int main (){int cas = 0,t;cin >> t;int sum = 0;for(int c = 1; c <= maxn/2; c++){for(int a = c+c ; a <= maxn ; a += c){int b = a - c;if((a^b) == c)ans[a]++;}}for(int i = 2; i <= maxn; i++)ans[i] += ans[i-1];while(t--){int n;cin >> n;printf("Case %d: %d\n",++cas,ans[n]);}
}

UVALive 6657相关推荐

  1. UVALive 6657 GCD XOR

    题目链接:http://acm.hust.edu.cn/vjudge/problem/viewProblem.action?id=48739 题解:打表可知,gcd(a,b)==a^b时,假设a^b= ...

  2. uvalive 6657 GCD XOR

    //感觉太长时间没做题 好多基本的能力都丧失了(>_<) 首先大概是这样的,因为gcd(a,b)=c,所以a,b都是c的倍数,所以我们依次枚举a的值为2c 3c 4c......,a xo ...

  3. UVALive 6657 GCD XOR 异或,因子筛法

    对每个数字,求他的因子. 由于i^j  >=  i-j  ,而目前需要得到的是公约数k,因此已知i,已知k,j只能等于i-k,然后判断 i^j == k 是否成立. 当然我不是这么过的.我算出i ...

  4. *UVALive 6657 - GCD XOR(数学)

    题目: http://acm.hust.edu.cn/vjudge/contest/view.action?cid=84227#problem/H 题意: 求出1~n中gcd(a,b)= a^b的对数 ...

  5. DP UVALive 6506 Padovan Sequence

    题目传送门 /*题意:两行数字,相邻列一上一下,或者隔一列两行都可以,从左到右选择数字使和最大DP:状态转移方程:dp[i][j] = max (dp[i][j], dp[1-i][j-1] + a[ ...

  6. The UVALIVE 7716 二维区间第k小

    The UVALIVE 7716 二维区间第k小 /** 题意:给一个n * n的矩阵,有q个查询每次查询r,c,s,k表示已(r,c)为右上角 大小为s的正方形中 第k小的元素n <= 250 ...

  7. UVALive 8513 lovers 2017 西安区域赛 B 贪心+multiset

    UVALive 8513 有2种人,每个人有自己的权值$A_i$ $B_i$ 当$A_i + B_i >=K$时 两个人可以配对 问最多多少人可以配对 解法 : 把$/{ A_i /}$ 排序 ...

  8. 训练指南 UVALive - 3713 (2-SAT)

    layout: post title: 训练指南 UVALive - 3713 (2-SAT) author: "luowentaoaa" catalog: true mathja ...

  9. 逆序数 UVALive 6508 Permutation Graphs

    题目传送门 1 /* 2 题意:给了两行的数字,相同的数字连线,问中间交点的个数 3 逆序数:第一行保存每个数字的位置,第二行保存该数字在第一行的位置,接下来就是对它求逆序数 4 用归并排序或线段树求 ...

最新文章

  1. 解决问题 inner element must either be a resource reference or empty.
  2. Android视频压缩并且上传
  3. treeview托拽和动态添加节点以及treeview和xml的交互的实现
  4. iOS APP提交上架流程
  5. 用Format创建格式化对象举例
  6. 【Ogre-windows】旋转矩阵及位置解析
  7. 口腔取模过程及注意事项_康贝齿科首家引进LAUNCA数字化口腔扫描,走进口腔数字化诊疗时代!...
  8. [导入]如何使得按确定和取消按纽转到两个不同的页面!
  9. SQL server 第三方驱动 JDTS
  10. XAMPP浏览器输入localhost跳转localhost/dashboard/
  11. CAS SSO 单点登录实例
  12. Atitit 编程语言编程方法的进化演进 sp  COP ,AOP ,SOP
  13. 2022最新手机设备标识码(IMEI、MEID、UDID、UUID、ANDROID_ID、GAID、IDFA等)教程
  14. 学习笔记|Pytorch使用教程22(hook函数与CAM可视化)
  15. SQL Server 2012 下载与安装详细教程
  16. Visual Studio添加代码片段
  17. pdfmark生成pdf文件并下载
  18. 【21考研】计算机/软件等专业调剂信息集合!【完结版】
  19. NOIP 2018 提高组初赛试题 题目+答案+简要解析
  20. Android 安全防护

热门文章

  1. jar -cvfM0 暂使用 jar cvf不好用
  2. 2020:可视化的视觉问答LRTA: A Transparent Neural-Symbolic Reasoning Framework with Modular Supervision
  3. 操作系统(2)复习 第八章 磁盘存储器的管理
  4. Word2vec词向量
  5. TypeScript初始化
  6. 成功解决无法写入输出文件,此实现不是Windows平台FIPS验证加密算法的一部分
  7. Android 4.2虚拟按键背景透明,Android 4.0 隐藏虚拟按键(导航栏)的方法
  8. 二十五岁零基础转行做软件测试怎么样?
  9. java求矩阵的逆矩阵_Java逆矩阵计算
  10. web自动化测试-第四讲: 三种时间等待