首页 > 其他 > 详细

[題解](函數下整點個數?)luogu_P4132_BZOJ_2659_算不出的等式

时间:2019-05-14 21:36:06      阅读:124      评论:0      收藏:0      [点我收藏+]

兩個都是一次函數,下取整就是整點個數,兩個函數k剛好成倒數,所以最後發現會組合成一個矩形

(為啥要考慮重複與否的問題???)

然而這樣會不會重複計算點數呢 我們發現因為取的是圖像下的整數點 所以要想重複算必須有整點的交集

然而pq互質,函數值不會有整數,把兩個函數圖像旋轉拼合以後可以發現不會重複算

但是當p和q相等的時候就會有交集了,這樣把對角線上重複算的去掉,

((p-1)/2)((p-1)/2)是矩形中的点数,后面是重复的点(有((p-1)/2)((p-1)/2)个点就有(p-1)/2)个点在对角线上,拼起来会重合)

提出(p-1)/2就是(p2p^2p2−1)/4,p为奇数,平方减一是偶数除以4与本身除以4同效(整数会自动舍弃小数位)

#include<iostream>
#include<cstdio>
using namespace std;
long long p,q;
int main(){
    scanf("%lld%lld",&p,&q);
    if(p!=q)printf("%lld",((p-1)/2)*((q-1)/2));
    else printf("%lld",p*q/4);
}

 

[題解](函數下整點個數?)luogu_P4132_BZOJ_2659_算不出的等式

原文:https://www.cnblogs.com/superminivan/p/10864465.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!