BZOJ 2671 Calc

UE5游戏逆向实战:用FModel提取.pak文件中的3D模型(附Dumper-7避坑指南) 本文详细介绍了如何使用FModel工具从UE5游戏的.pak文件中提取3D模型,并提供了Dumper-7的避坑指南。内容涵盖FModel工具链配置、UE5特有的unversioned properties问题解决方案、Dumper-7实战流程以及模型后处理技巧,帮助开发者高效获取游戏资产。 阅读详情

题目链接

https://lydsy.com/JudgeOnline/problem.php?id=2671

题解

对于一对 ( a , b ) (a,b) (a,b)满足 a + b ∣ a b a+b\mid ab a+b∣ab,假设 d = gcd ⁡ ( a , b ) , a = x d , b = y d d=\gcd(a,b),a=xd,b=yd d=gcd(a,b),a=xd,b=yd,那么
x d + y d ∣ x y d 2 x + y ∣ x y d x + y ∣ d xd+yd\mid xyd^2\\ x+y\mid xyd\\ x+y\mid d xd+yd∣xyd2x+y∣xydx+y∣d
设 m = ⌊ n ⌋ m=\lfloor\sqrt{n}\rfloor m=⌊n ​⌋答案就是
∑ j = 1 m ∑ i = 1 j − 1 ⌊ n i + j ⌋ [ gcd ⁡ ( i , j ) = 1 ] = ∑ d = 1 m μ ( d ) ∑ j = 1 ⌊ m / d ⌋ ∑ i = 1 j − 1 ⌊ n d 2 ( i + j ) ⌋ \begin{aligned} & \sum_{j=1}^{m}\sum_{i=1}^{j-1}\lfloor\frac{n}{i+j}\rfloor [\gcd(i,j)=1]\\ = & \sum_{d=1}^{m}\mu(d)\sum_{j=1}^{\lfloor m/d\rfloor}\sum_{i=1}^{j-1}\lfloor\frac{n}{d^2(i+j)}\rfloor \end{aligned} =​j=1∑m​i=1∑j−1​⌊i+jn​⌋[gcd(i,j)=1]d=1∑m​μ(d)j=1∑⌊m/d⌋​i=1∑j−1​⌊d2(i+j)n​⌋​
复杂度大概是 O ( n 3 / 4 ) O(n^{3/4}) O(n3/4)的,这个请大家自行证明。

代码

#include <cmath>
#include <cstdio>
#include <algorithm>

int read()
{
  int x=0,f=1;
  char ch=getchar();
  while((ch<'0')||(ch>'9'))
    {
      if(ch=='-')
        {
          f=-f;
        }
      ch=getchar();
    }
  while((ch>='0')&&(ch<='9'))
    {
      x=x*10+ch-'0';
      ch=getchar();
    }
  return x*f;
}

const int maxn=65536;

int p[maxn+10],prime[maxn+10],cnt,mu[maxn+10];

int getprime()
{
  p[1]=mu[1]=1;
  for(int i=2; i<=maxn; ++i)
    {
      if(!p[i])
        {
          prime[++cnt]=i;
          mu[i]=-1;
        }
      for(int j=1; (j<=cnt)&&(i*prime[j]<=maxn); ++j)
        {
          int x=i*prime[j];
          p[x]=1;
          if(i%prime[j]==0)
            {
              mu[x]=0;
              break;
            }
          mu[x]=-mu[i];
        }
    }
  return 0;
}

long long calc(int n,int d)
{
  long long ans=0;
  for(int i=1; i<=d; ++i)
    {
      int t=n/i;
      for(int l=i+1,r; (l<(i<<1))&&(l<=t); l=r+1)
        {
          r=std::min((i<<1)-1,t/(t/l));
          ans+=1ll*(r-l+1)*(t/l);
        }
    }
  return ans;
}

int n,s;

int main()
{
  getprime();
  n=read();
  s=sqrt(n);
  long long ans=0;
  for(int i=1; i<=s; ++i)
    {
      ans+=mu[i]*calc(n/i/i,s/i);
    }
  printf("%lld\n",ans);
  return 0;
}

【推荐100个unity插件之2】 DoTween动画插件的安装和使用整合(最全) 摘要:DOTween动画插件使用指南 DOTween是Unity中强大的动画插件,比原生动画更便捷。安装后需进行初始化设置,通过工具菜单生成程序集。主要提供通用方法(DOTween.To)和便捷方法(如transform.DOMove)两种动画实现方式。插件支持丰富的动画设置(循环、缓动等)和事件回调(OnComplete、OnKill)。还提供动画管理功能,包括清除(DOTween.Clear)、完成(DOTween.CompleteAll)和终止(DOTween.KillAll)动画。常用功能涵盖移动、 阅读详情

相关推荐

基于CRU和WorldClim的高分辨率(1km)气候数据生成

基于CRU和WorldClim的高分辨率(1km)气候数据生成

lhq7842955的博客 1691

【BZOJ2671】Calc

题面 BZOJ 给出N,统计满足下面条件的数对(a,b)的个数: 1.1≤a&amp;amp;lt;b≤N1≤a&amp;amp;lt;b≤N1\le a\lt b\le N 2.a+ba+ba+b整除a∗ba∗ba*b 我竟然粘了题面!!! 题解 还是今天菊开讲的。 设出d=gcd(a,b)d=gcd(a,b)d=gcd(a,b) 那么,设a=xd,b=yd,gcd(x,y)=1a=xd,b=yd,gc...

小蒟蒻yyb的博客 1697

毫米波雷达入门知识

毫米波雷达入门知识

ssbzxcvbnm1234567的博客 5442

bzoj2671 Calc 数论

太神了。完全不会。。o(╯□╰)o。       首先来看一下怎样的ab满足条件:       设d=gcd(a,b),a=du,b=dv,那么:       a+b|ab → du+dv|d^2uv → u+v|duv,由gcd(u,v)=1 → gcd(u,v,uv)=1 → u+v|d。因此,在本题中就是要找到有多少对u,v,t,其中d=t(u+v),满足:       b=dv=t

lych的博客 2313

影刀RPA之成绩批量查询系统

自动化登录账号,读取数据表中内容去填写信息去查询,并判断多个数据不同的页面去不同的读取查询结果内容,如考生各项信息与各科成绩,总分和查询时间,采集出来到指定的数据表格中,等待时间并依次循环运行。主要功能。

2201_75330891的博客 1084

实验室LIMS系统选型指南:从赛默飞到金现代,5大主流方案横评

本文深入分析了实验室LIMS系统选型的5大核心维度,包括架构选择、行业适配性、合规性设计、智能化程度和成本模型。通过对比赛默飞、金现代等主流厂商的优劣势,提供实战避坑策略,帮助实验室管理者做出明智决策,提升运营效率和合规水平。

plum99的博客 257

BZOJ2671: Calc 莫比乌斯反演

Description 给出NNN,统计满足下面条件的数对(a,b)(a,b)(a,b)的个数: 1.1&amp;lt;=a&amp;lt;b&amp;lt;=N1.1&amp;lt;=a&amp;lt;b&amp;lt;=N1.1&lt;=a&lt;b&lt;=N 2.a+b整除a∗b2.a+b整除a*b2.a+b整除a∗b Sample Input 15 Sample Output 4 ...

xgc_woker的博客 315

扣子(coze)实战|手把手教你搭建AI换装自动化工作流

摘要:本文介绍了使用Coze平台搭建AI换装工作流的详细教程。工作流包含模特图片上传、服装替换、任务提交和智能轮询等模块,通过change_model插件实现异步换装处理,并内置30秒循环查询机制。该工具支持自定义API密钥对接不同AI服务商,目前已上线共享空间并提供会员服务(59.8元/年)和VIP课程(499元/年),包含100+智能体和实战案例资源。完整体验地址见文中链接。

yueyehuguang的博客 1843

不重复数字 HYSBZ - 2761

题目链接 题意要求就是去重,并且输出顺序不改变,只保留第一次出现的元素。 set和map都可实现(map内部会自动排序,所以需要边存入map,判断是否是第二个及以上出现的元素,随即输出) /*set*/ #include<iostream> #include<algorithm> #include<set> using namespace std; ...

双木林的博客 293

华为昇腾Atlas 200I DK A2实战:从开箱到运行首个AI应用

本文详细介绍了华为昇腾Atlas 200I DK A2开发板从开箱到运行首个AI应用的全过程。包括硬件准备、系统烧录、开发板连接方案、AI应用运行及性能优化技巧,帮助开发者快速上手部署AI项目,提升开发效率。

weixin_27038245的博客 590

PCL 点云八叉树射线相交

PCL 点云八叉树射线相交

dayuhaitang1的博客 850

BZOJ 2671(Calc-数论反演)

Description  给出N,统计满足下面条件的数对(a,b)的个数:   1.1<=a#include<bits/stdc++.h> using namespace std; #define For(i,n) for(int i=1;i<=n;i++) #define Fork(i,k,n) for(int i=k;i<=n;i++) #define ForkD(i,k,n) for(in

nike0good |Oier&ACMer | 熟能生巧 524

【MTK平台】【wpa_supplicant】关于wpa_supplicant/p2p_supplicant.c文件的介绍

本文主要介绍external/wpa_supplicant_8/wpa_supplicant/p2p_supplicant.c 这个文件这个文件里面有个核心的方法就是。

专业开发者的博客,一个从事Android WiFi和蓝牙的工程师 724

【BZOJ2671】Calc 数学

【BZOJ2671】Calc Description   给出N,统计满足下面条件的数对(a,b)的个数:  1.1<=a<b<=N  2.a+b整除a*b Input  一行一个数N Output  一行一个数表示答案 Sample Input 15 Sample Output 4 HINT...

aodanchui1057的博客 121

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

BZOJ2671: Calc

BZOJ2671: Calc Description   给出N,统计满足下面条件的数对(a,b)的个数:  1.1<=a<b<=N  2.a+b整除a*b Input  一行一个数N Output  一行一个数表示答案 Sample Input 15 Sample Output 4 HINT 数...

weixin_30377461的博客 123

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

bzoj2671:Calc

传送门 我是菜鸡不会写,我抄题解,我无耻发博客 我看的博客 虽然以上全都属实,但是这个题我确实也学到了些操作 首先先转化一下题意 对于\(a,b\)要求\(a+b|ab\),则\(gcd(a,b)!=1\) 我们考虑将\(d=gcd(a,b)\),则\(a=id,b=jd\) 我们知道\(gcd(i,j)==1\),所以\(i+j|ijd\) 因为我们知道\(gcd(i,j)==1\),所以\(g...

weixin_30294709的博客 83

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

【BZOJ2671】Calc(莫比乌斯反演)

【BZOJ2671】Calc 题面 BZOJ 给出N,统计满足下面条件的数对(a,b)的个数: 1.\(1\le a\lt b\le N\) 2.\(a+b\)整除\(a*b\) 我竟然粘了题面!!! 题解 还是今天菊开讲的。 设出\(d=gcd(a,b)\) 那么,设\(a=xd,b=yd,gcd(x,y)=1\) \((x+y)d|xyd^2,x+y|xyd\) 根据辗转相减的原理 可以得到\...

weixin_30610755的博客 132

bzoj2671: Calc

(丧心病狂)莫比乌斯反演

ACoder 842

BZOJ 2671 Calc 数论

题目大意:给定NN,求∑ni=1∑nj=1[i+j|ij]1\sum_{i=1}^n\sum_{j=1}^n[i+j|ij]1 跪Nodgd= = 不妨设d=gcd(i,j),i=ad,j=bd,gcd(a,b)=1d=\gcd(i,j),i=ad,j=bd,\gcd(a,b)=1,那么有 (a+b)d|abd2(a+b)d|abd^2 即 a+b|abda+b|abd ∵gcd(a,b

世界 4460

【BZOJ 2671】Calc

题目要求求出∑Na=1∑Nb=a+1[a+b|ab]\sum_{a=1}^{N}\sum_{b=a+1}^{N}[a+b|ab] 我们设d=gcd(a,b),a=nd,b=mdd=gcd(a,b),a=nd,b=md则转化为 [nd+md|nmd2]=[n+m|nmd][nd+md|nmd^2]=[n+m|nmd]又有n,mn,m互质,则显然有n+m|dn+m|d 原式可推为 ∑Nd=1∑⌊

Lcomyn的专栏 2410

bzoj2671 Calc

传送门 求: ∑1≤a&lt;b≤N[a+b∣ab]\sum_{1 \le a &lt; b \le N}[a+b|ab]1≤a<b≤N∑​[a+b∣ab] 对于a+b∣aba+b|aba+b∣ab,我们考虑利用gcdgcdgcd将其转化。设gcdgcdgcd为ddd。 令a=u∗d,b=v∗da=u*d,b=v*da=u∗d,b=v∗d,其中gcd(u,v)=1gcd(u,...

g21wcr的博客 166

[bzoj2671] Calc

Description 给出N,统计满足下面条件的数对(a,b)的个数: 1<=a<b<=N a+b整除a*b  Input  一行一个数N Output  一行一个数表示答案 Sample Input 15 Sample Output 4 Solution 题目求的是: \[ \sum_{i=1}^n\sum_{j=i+1}^n[i+j|ij] \] 不妨设\(d=(i,j...

weixin_30745641的博客 72

【BZOJ2671】—Calc(莫比乌斯反演)

传送门 考虑实际求 ans=∑i=1n∑j=i+1n[i+j∣i∗j]ans=\sum_{i=1}^{n}\sum_{j=i+1}^n[i+j|i*j]ans=∑i=1n​∑j=i+1n​[i+j∣i∗j] 令d=gcd(i,j),i=i′d,j=j′dd=gcd(i,j),i=i&#x27;d,j=j&#x27;dd=gcd(i,j),i=i′d,j=j′d i+j∣i∗j→d(...

Stargazer的博客 225
上一篇: BZOJ 2440 [中山市选2011]完全平方数
下一篇: BZOJ 2818 Gcd BZOJ 2820 YY的GCD
wang3312362136
博客等级 码龄9年 33粉丝 304原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值