题目描述
求,其中p和q是奇质数。
输入
只有一行,两个奇质数,分别表示p,q。
输出
一个数,表示算式结果。
样例输入
5
样例输出
6
题解
数论
神TM数学结论题。。。
当$p eq q$时,考虑其几何意义:前面的那个式子是直线$y=frac qpx$在$xin [1,frac{p-1}2]$范围内下方的点数,而后面的恰好是左方的点数。由于直线上显然没有点,因此表示出来就是矩形中的点的个数$frac{p-1}2·frac{q-1}2$。
当$p=q$时直接使用等差数列求和公式计算,答案为$frac{(p-1)(p+1)}4$
#include <cstdio> int main() { long long p , q; scanf("%lld%lld" , &p , &q); if(p == q) printf("%lld " , (p - 1) * (p + 1) >> 2); else printf("%lld " , (p - 1) * (q - 1) >> 2); return 0; }