hdu 4279 Number (找规律)
http://acm.hdu.edu.cn/showproblem.php?pid=4279
题意:
给出a,b两个数,1<=a<=b 如果a,b不互质,且a%b != 0则说明a是b的特殊数字f[i]表示i拥有的特殊数字的个数,如果f[i]是奇数,那么i就是 real numbers
给出区间[x,y]求区间内的 real numbers的数量。
思路:
打标找规律,真心不好发现这规律;大于12之后 d[x] = x/2 -1或者d[x] = x/2 - 2;(d[x]表示1到x拥有的 real numbers的数量)发现在遇到平方数是转变原来-1变为-2,否则-2变为-1。 p^2 <= k < (p + 1)^2则数量为:p为奇数-1 偶数-2;
Ps:这里遇到一个很纠结的问题sqrt(x)如果不转换x为浮点型,C++出现编译错误,而G++就AC,而如果转化为浮点型c++wa..无语了。。
#include <iostream> #include <cstdio> #include <cstring> #include <algorithm> #include <cmath> #include <queue> #include <stack> #include <set> #include <map> #include <string>#define CL(a,num) memset((a),(num),sizeof(a)) #define iabs(x) ((x) > 0 ? (x) : -(x)) #define Min(a,b) (a) > (b)? (b):(a) #define Max(a,b) (a) > (b)? (a):(b)#define ll __int64#define MOD 100000007 #define lc l,m,rt<<1 #define rc m + 1,r,rt<<1|1 #define pi acos(-1.0) #define test puts("<------------------->") #define maxn 100007 #define M 100007 #define N 107 using namespace std; //freopen("din.txt","r",stdin); int f[20] = {0,0,0,0,0,0,1,1,2,3,4,4,5};ll getR(ll x){if (x <= 12) return f[x];ll tmp = x/2;ll tp = (ll)sqrt(1.0*x);if (tp&1) tmp -= 1;else tmp -= 2;return tmp; } int main(){ll a,b;int t;scanf("%d",&t);while (t--){scanf("%I64d%I64d",&a,&b);printf("%I64d\n",getR(b) - getR(a - 1));}return 0; }
转载于:https://www.cnblogs.com/E-star/archive/2012/09/11/2680958.html
hdu 4279 Number (找规律)相关推荐
- hdu 1165 坑爹找规律题
http://acm.hdu.edu.cn/showproblem.php?pid=1165 不看题解,使劲找规律,应该是可以找到的,就是费时间! Problem Description As is ...
- hdu 4279 Number
代码如有错,请指出 找规律题... 打的表如下: View Code n 满足有公因子且不整除的数的个数 满足为奇数的个数(要求的答案) 1 0 0 2 0 0 3 0 0 4 0 0 5 0 0 6 ...
- hdu 5504(枚举+找规律)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=5504 官方题解: 注意先特判0 的情况:如果读入的数据有0 ,那么去掉所有的0 且最后答案和0 取一个 ...
- hdu 3054 Fibonacci 找规律
传送门 题意:第m个满足末尾连续k个0的数是斐波那契的第几项. 思路:先通过打表输出找到规律,然后根据规律解题.运行完打表代码之后会发现1,3,4,5,6,7,--都是到第9个数增量是有一个变化,而2 ...
- HDU 2897 (博弈 找规律) 邂逅明下
根据博弈论的两条规则: 一个状态是必胜状态当且仅当有一个后继是必败状态 一个状态是必败状态当且仅当所有后继都是必胜状态 然后很容易发现从1开始,前p个状态是必败状态,后面q个状态是必胜状态,然后循环往 ...
- HDU 4279 - Number
2012年天津赛区网赛的题目,想了好久,也没能想出来 还是小杰思路敏捷,给我讲解了一番,才让我把这个题做出来 f(x)=x-phi(x)(1--x与x互素个数)-g(x)(x的因子个数)+1 其中g( ...
- HDU 1847 (博弈 找规律) Good Luck in CET-4 Everybody!
为了提高题解质量还是简单证明一下:3的倍数是必败状态. 如果n % 3 = 1,那么拿走1个石子:如果n % 3 = 2,那么拿走两个石子,都将转移到3的倍数的状态.所以每个必胜状态都有一个后继是必败 ...
- HDU 5703 Desert 水题 找规律
HDU 5703 Desert 水题 找规律 已知有n个单位的水,问有几种方式把这些水喝完,每天至少喝1个单位的水,而且每天喝的水的单位为整数.看上去挺复杂要跑循环,但其实上,列举几种情况之后就会发现 ...
- 【HDU - 5881】Tea(思维,找规律)
题干: Tea is good. Tea is life. Tea is everything. The balance of tea is a journey of pursuing balance ...
最新文章
- mysql 1449 : The user specified as a definer ('root'@'%') does not exist
- voc生成xml 代码
- oracle中把函数的执行权限赋个某个用户
- 设计一个算法找一条从迷宫入口到出口的最短路径。_我花了一夜用数据结构给女朋友写个H5走迷宫游戏...
- 【资料】翘首期盼247天!《阿里巴巴Java开发手册》扫描插件详情介绍
- shell sort 最后一列排序_十个必知的排序算法|Python实例系列[1]
- 为什么要学linux命令以及linux(ubuntu)的文件与目录命令
- HTML5新控件 - 日期和时间选择输入
- 电子设计竞赛作品设计步骤
- 前端自动化测试框架Jest中的匹配器
- H3C_利用策略路由实现出口双线路负载(选路)的部署
- Java Logging之JUL系列——Logger Hierarchy
- day 05 DQL数据查询语言---连接查询---登堂入室
- 6-vulnhub靶场-LordOfTheRoot_1.0.1靶机内核提权udf提权缓冲区溢出提权
- 2021年中高级Android大厂面试秘籍,为你保驾护航金三银四,直通大厂
- 迅雷面试题: 模拟银行一天的工作, 统计vip客户和普通客户的办理业务的平均等待时间.
- elasticsearch彻底删除文件命令行操作
- 无需翻墙使用ChatGPT-4
- cpu第几代计算机,赛扬G系列有几代cpu分别是
- 告诉你怎么编写一个最简单的单片机程序
热门文章
- Kubernetes 搭建 ES 集群(存储使用 cephfs)
- u3d+向服务器上传文件,unity3d向服务器传数据库
- 【CF gym 103260】40th Petrozavodsk Programming Camp, Day 5,2021.2.3 水题2题
- 泽众性能测试软件,软件测试工具-测试管理工具-自动化测试工具-性能测试工具-SPASVO泽众软件测试网...
- JAVA→异常、异常类体系结构、try→catch→finally处理异常、throw new Exception(“重构异常“);、throws Exception{ }、自定义异常
- simpana oracle,华为认证云运维专家(HCIE-CDO)
- java中实现方法重载怎么声明_java 接口中如何声明类似于重载的方法?
- java 调用c 的dll,java如何调用C的dll
- hget如何获取多个value_《深入微服务》之 如何给老婆解释什么是微服务的基础框架SpringBoot?...
- 操作系统—处理机调度