题面

已知

\[\large{S(n,m)=\{k_{1},k_{2},\cdots k_{i}\}}
\]

且每个 \(k\) 满足

\[\large{n \%k+m\%k\geq k}
\]

\[\large{\phi(n)\times \phi(m)\times\sum_{k\in S(n,m) }\phi(k)\%998244353}
\]

Part 1

\[\large{n=a_{1} \times k +b_{1} ,m=a_{2} \times k +b_{2}}
\]

所以有

\[\large{b_{1}+b_{2} \geq k}
\]

\[\large{(a_{1} \times k +b_{1})+(a_{2} \times k +b_{2}) \geq (a_{1}+a_{2}+1)\times k}
\]

所以

\[\large{n+m \geq (a_{1}+a_{2}+1)\times k}
\]

两边同时除以 \(k\) 并向下取整得

\[\large{\lfloor \frac{n+m}{k} \rfloor \geq a_{1}+a_{2}+1}
\]

因为

\[\large{a_{1}=\lfloor \frac{n}{k} \rfloor ,a_{2}=\lfloor \frac{m}{k} \rfloor}
\]

所以

\[\large{\lfloor \frac{n+m}{k} \rfloor \geq \lfloor \frac{n}{k} \rfloor+\lfloor \frac{m}{k} \rfloor+1}
\]

\[\large{\lfloor \frac{n+m}{k} \rfloor - \lfloor \frac{n}{k} \rfloor - \lfloor \frac{m}{k} \rfloor\geq 1}
\]

已知

\[\large{\lfloor\frac{x}{y}\rfloor=\frac{x}{y}-\{\frac{x}{y}\}}
\]

所以式子可化为

\[\large{\frac{n+m}{k}-\{\frac{n+m}{k}\}-(\frac{n}{k}-\{\frac{n}{k}\}+\frac{m}{k}-\{\frac{m}{k}\})} \geq 1
\]

化简得

\[\large{\{\frac{n}{k}\}+\{\frac{m}{k}\}-\{\frac{n+m}{k}\}}\geq 1
\]

因为

\[\large{0\leq\{\frac{n}{k}\}},\{\frac{m}{k}\},\{\frac{n+m}{k}\}<1
\]

所以

\[\large{1<\{\frac{n}{k}\}}+\{\frac{m}{k}\}-\{\frac{n+m}{k}\}<2
\]

又因为

\[\large{\{\frac{n}{k}\}+\{\frac{m}{k}\}-\{\frac{n+m}{k}\}}\geq 1,\{\frac{n}{k}\}+\{\frac{m}{k}\}-\{\frac{n+m}{k}\}\in N^{+}
\]

所以

\[\large{\{\frac{n}{k}\}+\{\frac{m}{k}\}-\{\frac{n+m}{k}\}}= 1
\]

\[\large{\lfloor \frac{n+m}{k} \rfloor - \lfloor \frac{n}{k} \rfloor - \lfloor \frac{m}{k} \rfloor= 1}
\]

Part2

先忽视要求式子的部分, 得

\[\large{\sum_{k\in S(n,m)}\phi(k)}
\]

\[\large{\sum_{n \%k+m\%k\geq k }\phi(k)}
\]

\[\large{\sum_{k=1}^{n+m}\phi(k)\times\lfloor \frac{n+m}{k} \rfloor}-\sum_{k=1}^{n}\phi(k)\times\lfloor \frac{n}{k} \rfloor-\sum_{k=1}^{m}\phi(k)\times\lfloor \frac{m}{k} \rfloor
\]

因为

\[\large{n=\sum_{d|n}\phi(d)}
\]

所以

\[\large{\sum_{i=1}^{n+m}i-\sum_{i=1}^{n}i-\sum_{i=1}^{m}i=\frac{(n+m)\times(n+m-1)}{2}-\frac{n\times(n-1)}{2}-\frac{m\times(m-1)}{2}-}
\]

\[\large{=n\times m}
\]

结论

\[\large{ans=\large{\phi(n)\times \phi(m)\times n\times m\%998244353}}
\]

代码

#include <bits/stdc++.h>
using namespace std; const int mod=998244353; unsigned long long n,m; unsigned long long phi(unsigned long long x)
{
unsigned long long ans=x;
for (unsigned long long i=2;i*i<=x;i++)
{
if (x%i==0)
{
ans-=ans/i;
while (x%i==0) x/=i;
}
}
if (x>1) ans-=ans/x;
return ans%mod;
} int main()
{
cin>>n>>m;
cout<<(phi(n)%mod)*(phi(m)%mod)%mod*(n%mod)%mod*(m%mod)%mod;
return 0;
}

「BZOJ4173」数学的更多相关文章

  1. 2018.06.26「TJOI2018」数学计算(线段树)

    描述 小豆现在有一个数 xxx ,初始值为 111 . 小豆有 QQQ 次操作,操作有两种类型: 111 $ m$ : x=x×mx=x×mx=x×m ,输出 xxx modmodmod MMM : ...

  2. 每个程序员都可以「懂」一点 Linux

    提到 Linux,作为程序员来说一定都不陌生.但如果说到「懂」Linux,可能就没有那么多人有把握了.到底用 Linux 离懂 Linux 有多远?如果决定学习 Linux,应该怎么开始?要学到什么程 ...

  3. LOJ 3184: 「CEOI2018」斐波那契表示法

    题目传送门:LOJ #3184. 题意简述: 题目说得很清楚了. 题解: 首先需要了解「斐波那契数系」为何物. 按照题目中定义的斐波那契数列 \(F_n\),可以证明,每个非负整数 \(n\) 都能够 ...

  4. 「NOI2012」骑行川藏

    「NOI2012」骑行川藏 题目描述 蛋蛋非常热衷于挑战自我,今年暑假他准备沿川藏线骑着自行车从成都前往拉萨. 川藏线的沿途有着非常美丽的风景,但在这一路上也有着很多的艰难险阻,路况变化多端,而蛋蛋的 ...

  5. 「MoreThanJava」计算机发展史—从织布机到IBM

    「MoreThanJava」 宣扬的是 「学习,不止 CODE」,本系列 Java 基础教程是自己在结合各方面的知识之后,对 Java 基础的一个总回顾,旨在 「帮助新朋友快速高质量的学习」. 当然 ...

  6. 「MoreThanJava」一文了解二进制和CPU工作原理

    「MoreThanJava」 宣扬的是 「学习,不止 CODE」,本系列 Java 基础教程是自己在结合各方面的知识之后,对 Java 基础的一个总回顾,旨在 「帮助新朋友快速高质量的学习」. 当然 ...

  7. 「MoreThanJava」机器指令到汇编再到高级编程语言

    「MoreThanJava」 宣扬的是 「学习,不止 CODE」,本系列 Java 基础教程是自己在结合各方面的知识之后,对 Java 基础的一个总回顾,旨在 「帮助新朋友快速高质量的学习」. 当然 ...

  8. 「MoreThanJava」Day2:变量、数据类型和运算符

    「MoreThanJava」 宣扬的是 「学习,不止 CODE」,本系列 Java 基础教程是自己在结合各方面的知识之后,对 Java 基础的一个总回顾,旨在 「帮助新朋友快速高质量的学习」. 当然 ...

  9. 「MoreThanJava」Day 3:构建程序逻辑的方法

    「MoreThanJava」 宣扬的是 「学习,不止 CODE」,本系列 Java 基础教程是自己在结合各方面的知识之后,对 Java 基础的一个总回顾,旨在 「帮助新朋友快速高质量的学习」. 当然 ...

随机推荐

  1. hadoop的6个进程启动不全,请试 比如datanode没有启动

      赋给hadoop用户hadoop-1.2.1读写权限 [root@master usr]# chown -R hadoop121:hadoop121 hadoop-1.2.1/   折腾了两个小时 ...

  2. jekyll 添加 Valine 评论

    本文告诉大家如何在自己搭建的静态博客添加 Valine 评论.在这前,我基本都是使用 多说,但是多说gg啦,所以就在找一个可以替换的评论 本来 Disqus是很好的,但是在国内很难打开,所以我就需要一 ...

  3. java 使用反射调用可变参数方法

    使用反射操作对象-调用可变参数方法 要把可变参数都当做是其对应的数组类型参数; 如 show(XX... is)作为show(XX[] is)调用; 若可变参数元素类型是引用类型: JDK内部接收到参 ...

  4. linux主编号的动态分配

    一些主设备编号是静态分派给最普通的设备的. 一个这些设备的列表在内核源码树的 Documentation/devices.txt 中. 分配给你的新驱动使用一个已经分配的静态编号的机会 很小, 但是, ...

  5. P1080 探测器

    题目描述 一个 n*n 的网格图上有 m 个探测器,每个探测器有个探测半径r,问这 n*n 个点中有多少个点能被探测到. 网格图上的点的坐标从(1,1)到(n,n). 输入格式 第一行3个整数n,m, ...

  6. 2018-2-13-win10-uwp-InkCanvas控件数据绑定

    title author date CreateTime categories win10 uwp InkCanvas控件数据绑定 lindexi 2018-2-13 17:23:3 +0800 20 ...

  7. H3C 端口隔离配置举例

  8. Elasticsearch搜索调优

    最近把搜索后端从AWS cloudsearch迁到了AWS ES和自建ES集群.测试发现search latency高于之前的benchmark,可见模拟数据远不如真实数据来的实在.这次在产线的bac ...

  9. TestStand 界面重置【小技巧】

    有几种情况可能会使用到这个功能: (1)当界面调整的很乱的时候 (2)当界面突然消失的时候(但是软件进程还在)--快捷键 Alt+V 会弹出菜单,再点击Reset UI Configuration即可 ...

  10. Java图形打印 上下对称三角星

    记录记录 @Test public void name03() { int row = 9; for (int i=0,k=row,m=0;i< row;i++){ for(int l=m-i; ...