这道题实在是有些精彩

求 1- n 内因子和为偶数的数字的 个数

那么我们就有思路了虽然题目里给了求因子和公式

但是由于之前我们自学,我们知道这个公式最原始的样子

Sum = (1 + p1^1 + p1^2 + ... pn^a1) * .........

题目里给的全是等比数列求和公式优化后的式子

首先我们需要了解一个东西, 偶数个奇数相加之和是偶数,奇数个奇数相加之和是奇数。。

证明的话可能比较。。粗糙:

我们知道两个奇数之和必定为 偶数了,那么如果偶数个相加不就是。。多个两个奇数相加吗。。而偶数加偶数必定是奇数,奇数加偶数必定是偶数,,,所以如果是奇数个奇数相加,我们拿出一个奇数,剩下的是偶数个奇数相加 为偶数,最后加上这个奇数,最终结果就是 奇数了。

那么这条规律我们先暂时放下,但是记住。

我们发现对于乘法而言 奇数乘以奇数才为奇数(奇数个奇数相加),我们知道素数里 只有 2 是偶数,而对于前 n 项和公式,我们知道 2 那一部分必定为 奇数(化简到最后为 2^n - 1) 所以可以知道 2^x 这些数字因子和必为奇数

对于公式 X = p1^a1 * p2^a2 *..... pn^an

那么对于其他项, Sum = S(p1) + S(p2) + S(p3),..... p2 p3 ----pn 都必定为 奇数同时我们知道 p^n 也一定为奇数(奇数乘以奇数仍为奇数)那么 对于每个素数 p 一共有 a+1个奇数相加 ,如果 S 想为奇数, a+1 必定得是奇数,得出 a 必定得为 偶数

那么如果 a 为偶数,那么我们知道这个数必定可以由 p2^2(或者 (p2^2) ^ 2 ) 作为因子,也就是平方数因子和必定为奇数

但是别忘了 如果 p1 = 2 的时候也得算上,所以任意的平方数 * 2 因子和也是奇数

这样我们可以不用去管 2^k 因为 2^k 可以分解成 2* 某个平方数。

综上 最终结果就是 n - sqrt( n ) - sqrt( n/2 )

#include <bits/stdc++.h>
using namespace std;
#define ll long long int
int main()
{ll n;int t,cas = 1;scanf("%d",&t);while(t--){scanf("%lld",&n);ll a = sqrt(n);ll b = sqrt(n/2);printf("Case %d: %lld\n",cas++,n-a-b);}return 0;
}

LightOJ 1336相关推荐

  1. Sigma Function LightOJ - 1336[约数和定理]

    题目大意:求1到n之间的数因子和是偶数有几个 解题思路:对于任意一个xxx,都有x=p1a1∗p2a2∗p3a3...∗pxas,x的所有约数之和就是sum=(1+p11+p12+..p1a1)∗(1 ...

  2. LightOJ 1336 Sigma Function

    题意: 每个数字都是由质因数乘积组成: 于是这个数的所有因子之和就是: 求小于等于n的数中所有质因子之和是偶数的数的个数. 思路: 如上式,求所有质因子之和就是每个质因子(p^0+p^1+p^2+-- ...

  3. kuangbin带你飞专题合集

    题目列表 [kuangbin带你飞]专题一 简单搜索 [kuangbin带你飞]专题二 搜索进阶 [kuangbin带你飞]专题三 Dancing Links [kuangbin带你飞]专题四 最短路 ...

  4. 算法学习经典例题整理

    陆续会对本篇博客进行更新! 搜索:https://vjudge.net/contest/292597 区间DP:https://vjudge.net/contest/293892 树状背包:https ...

  5. [kuangbin]各种各样的题单

    [kuangbin]各种各样的题单 专题1 简单搜索 POJ 1321 POJ 2251 POJ 3278 POJ 3279 POJ 1426 POJ 3126 POJ 3087 POJ 3414 F ...

  6. 紫薯第10章数学 kaungbin专题14数论基础

    杂谈 kuangbin14数论Harmonic Number LightOJ - 1234 分段打表 + 欧拉爷爷o(1).(第一次触及了欧拉常熟) 10.1.1 && 10.1.2 ...

  7. kuangbin带你飞 专题1-23 题单

    kuangbin大神,对于打过ACM比赛的ACMer,无人不知无人不晓. 在此,附上vjudge平台上一位大神整理的[kuangbin带你飞]专题目录链接. [kuangbin带你飞专题目录1-23] ...

  8. “kuangbin带你飞”专题计划——专题十四:数论基础

    写在前面 1.目前还没啥写的.开始时间:2021-05-13(其实博客上看得到该博客创建时间的) 2.上一个专题刷的是网络流(博客总结),属于第一次接触.本来想的是一周特别高效,然后一周略划水,结果是 ...

  9. linux划分分区 2t,Linux使用GPT划分大于2T的分区

    在Linux下磁盘分区大于2TB的时候我不能使用常用fdisk命令,这时我们就需要先把大容量的磁盘进行转换为GPT格式,然后试用parted命令来划分大于2T的分区. 方法: 1.用parted命令分 ...

  10. 老鱼的-kuangbin专题题解

    kuangbin专题问题一览 专题一 简单搜索 POJ 1321 棋盘问题 POJ 2251 Dungeon Master POJ 3278 Catch That Cow POJ 3279 Flipt ...

最新文章

  1. 记录一下matlab三维柱状图调色详细步骤
  2. web socket 心跳包的实现方案
  3. Eclipse中SVN的安装步骤(两种)和用法
  4. 17.4.28 清北第一天水题
  5. Golang之var、new与make、简短声明
  6. Android消息处理机制(Handler、Looper、MessageQueue与Message)
  7. java 线程百科_Java并发——线程介绍
  8. mysql 设置男女约束
  9. iphone11返回上一级手势怎么设置_华为手机的这五种导航方式,你更习惯哪一种?怎么切换?...
  10. Android Studio的怪错:AndroidManifest.xml unresolve symbol package/connot resolve symbol/Animations
  11. .NET中的Lambda表达式与匿名方法
  12. b2b2c电商平台系统
  13. 青蛙跳台阶变态青蛙跳台阶
  14. 2015年3月苹果新的审核标准(中文)
  15. 公众号滑动图代码_公众号怎么制作图片滑动的效果?怎么做可以上下滑动的长图?...
  16. matlab多元变量最优解,模拟退火算法确定多个变量的最优解
  17. 如何搭建高质量在线网校平台
  18. 2021年必备的最全人工智能书单
  19. ppt模板文字拆分怎么制作?
  20. 三菱PLC模板程序FX5U轴FB块 使用ST语言编写的轴FB块,包含原点复归

热门文章

  1. arduino代码_Arduino超声波传感器测距代码完全解析
  2. [RK3288][Android7.1]调试笔记 --- 内置高版本的APK编译User版本出错解决
  3. 如何合并excel文件
  4. Ubuntu安装python步骤
  5. Win11U盘拒绝访问怎么办?Win11U盘拒绝访问的有效解决方法
  6. “性能续航小超人”iQOO Z6系列登场:售价仅1199元起
  7. 偏差(bias)和方差(variance)区别:
  8. oracel vm 安装windows server 2012报错Error 0x000000C4
  9. 苹果又开了一个“坏头”
  10. 宁德时代发布第一代钠离子电池;联泰科技与赢创联合研发实验室成立;霍尼韦尔高管人事变动 | 能动...