题意:链接

方法:数论

解析:

对于这道题,假设n=a*b;然后b是较大的因子

之后怎么来想呢?

之后就是根号找因子,找到每个a,b,之后从0~n枚举b的倍数。

因为x2−1=0(modx^2-1=0(mod n)n)

所以(x−1)∗(x+1)=0(mod(x-1)*(x+1)=0(mod n)n)

因为我们枚举的数就是k1*b,所以我们只要讨论一下,k1*b是等于x-1还是x+1就好了,之后就是判断下边界什么的就把所有的可能值加到一个set里!千万不要犯傻加到map里!!千万不要!!不要认为map啥都能干!!

之后因为set内元素的唯一性。直接输出内部所有元素就行了。

另外说一下,原题内并没有 1 这个数据,1这个数据应该输出none,其他的全部有解,因为1一定使其他的成立,而0又不能使1成立。

代码:

#include <set>
#include <cstdio>
#include <cstring>
#include <iostream>
#include <algorithm>
using namespace std;
typedef long long ll;
ll n;
set<ll>s;
set<ll>::iterator it;
int main()
{scanf("%lld",&n);for(ll i=1;i*i<=n;i++){if(n%i==0){ll a=i,b=n/i;for(ll j=0;j<=n;j+=b){if((j+2)%a==0&&j+2<n)s.insert(j+1);if((j-2)%a==0&&j-2>=0)s.insert(j-1);}}}if(s.empty()){puts("None");return 0;}for(it=s.begin();it!=s.end();it++){printf("%lld\n",*it);}
}

BZOJ 1406 [AHOI2007]密码箱 数论相关推荐

  1. bzoj 1406: [AHOI2007]密码箱

    1406: [AHOI2007]密码箱 Time Limit: 5 Sec  Memory Limit: 64 MB Submit: 1629  Solved: 967 [Submit][Status ...

  2. BZOJ1406: [AHOI2007]密码箱 数论

    Description 在一次偶然的情况下,小可可得到了一个密码箱,听说里面藏着一份古代流传下来的藏宝图,只要能破解密码就能打开箱子,而箱子背面刻着的古代图标,就是对密码的提示.经过艰苦的破译,小可可 ...

  3. BZOJ 1406 密码箱(数论)

    很简洁的题目.求出x^2%n=1的所有x<=n的值. n<=2e9. 直接枚举x一定是超时的. 看看能不能化成有性质的式子. 有 (x+1)(x-1)%n==0,设n=a*b,那么一定有x ...

  4. 【刷题】BZOJ 4176 Lucas的数论

    Description 去年的Lucas非常喜欢数论题,但是一年以后的Lucas却不那么喜欢了. 在整理以前的试题时,发现了这样一道题目"求Sigma(f(i)),其中1<=i< ...

  5. BZOJ 2277 Poi2011 Strongbox 数论

    题目大意:给定n和k个整数,求mod n加法下的群G的一个子群G',满足a[1]~a[k-1]都不在群中而a[k]在群中 首先易证G'一定是一个循环群 证明:显然若a在群中则a的逆元在群中 那么我们就 ...

  6. 2019.5.summary

    2019.5.1 CF C. Prefix Sum Primes 感觉CF就是训练妳如何养成对题目强大的YY能力的QAQ 我们构造 如果只有一种,没辙,只能这样放 否则先放一个2,再放一个1 接下来把 ...

  7. 算法笔记——数学相关

    算法笔记--数学相关 高精度 乘法逆元 排列组合 二项式定理 质数的判定和应用 约数 拓展欧几里得 大步小步算法(BSGS) 拓展大步小步算法 快速乘和快速幂 矩阵相关 欧拉函数 欧拉定理及费马小定理 ...

  8. 浅谈积性函数求前缀和

    转载至https://blog.csdn.net/skywalkert/article/details/50500009 前置技能 积性函数的定义 若f(n)f(n)的定义域为正整数域,值域为复数,即 ...

  9. ACM里的生成函数初探

    生成函数 前情提要:由于本人不太喜欢写博客(懒),所以写的时候一般是由于某些原因写的专题内容.这次是2020CCPC长春热身赛的D题没做出来. 大佬论文放前面:推荐阅读:毛杰明 母函数的性质及应用 基 ...

  10. 知识点 - 数论函数导论

    知识点 - 数论进阶 abstract:整除分块,积性函数,线性筛,莫比乌斯反演,迪利克雷卷积,积性函数前缀和,杜教筛,阁洲筛,min_25筛 0.引入 Gym - 101485D debugging ...

最新文章

  1. oracle断电 ora01110,oracle在做备份的时候断电
  2. python学习--练习题1、2、3、4、5--
  3. Linux知识点记录
  4. 数据结构-线性相关代码
  5. Linux Bash Shell中的特殊参数含义
  6. Java 第四次作业
  7. 部分高级正则特性 使用
  8. Linux之磁盘挂载
  9. 动态主机配置协议DHCP
  10. OpenResity + nginx + mysq配置
  11. 前后端开源的一款简单的微信个人博客小程序
  12. mysql查询以 开头的记录_sql 查询以指定字符开头sql查询语句
  13. 关于在Onenote online导出笔记的笔记
  14. 红米手机连接小米wifi显示已连接服务器,小米手机连wifi已连接却无法访问互联网怎么回事...
  15. 极进网络(Extreme Networks )Extreme VDX 6940 交换机光模块配置方案
  16. 设计稿 自动html,简单的登陆页面PSD设计稿来演示转化为HTML页面的全部过程
  17. win7声音图标不见,此图标当前处于未活动状态
  18. 极米NEW Z6X和坚果G9哪个好?
  19. 常用符号的Unicode表
  20. python学习(一)

热门文章

  1. besiege机器人_围攻besiege机器人 机器人制作思路
  2. restTemplate接收image/jpeg格式
  3. python中keys是什么意思_python中的key是什么意思
  4. 来电时不会发送本地通知
  5. 世界上第一次网络瘫痪 | 历史上的今天
  6. win10下如何使用linux系统
  7. win10 matlab打开,win10系统启动matlab出现闪退的处理步骤
  8. Flutter之pigeon
  9. 5. 列表、元组和集合
  10. 全志定制编译Android,全志H3 Android定制化文档