我真的是太太太太蒟蒻了QwQ
2020/8/25晚
Lcy大佬让我们进了QHOI洛谷群,然后就让我们AK掉他一年前搞的比赛
然后别人就一个又一个AC了T1(lcy说这是**题)QAQ结果我A不掉.....
不过确实不是很难,没有考到算法,完全是数学Problem(太菜了,数学都不会了QWQ
题目
先亮 简单 题
先不管前面的可爱的珂朵莉了,先把题给A了,题目可以理解为:
对于正整数
思路
-首先肯定会想到暴力枚举并处理,结果是爆零!大佬数据太牛了(或者是我太弱啦,lcy说这题他小学觉得有点难,orz
然后通过长时间的找规律加以思考,有了如下思路:
设
则有
即
整理可得
此时的话,
可是然后呢???本蒟蒻当时只能想到这了,不会求了,还是26号让大佬和我讲讲吧(希望能听懂—_—)
正解
(次日,lcy跟我解释完了,前面的思路是没错,然后就是该想以下内容了。
首先已知
每找到一个因子
由于只需找到
那么对于式子
解得
但是这里又有一些小问题,如果解出来的
肯定不是啦!回翻到题目,你会看到这一句话:
和 都是完全平方数
再翻到思路,你又会看到这一句话:
,
这不就说明了
贴代码
void solve(ll x,ll y){ ll p,q; if(x>y)swap(x,y); ll cha=abs(x-y); for(register int i=1;i*i<=cha;++i){ if(cha%i==0&&(i+cha/i)%2==0){ //p-q=i;p+q=cha/i; p=(i+cha/i)/2;//大的 q=p-i;//小的 cout<<p*p+x<<endl; } } }
完整代码
#include <bits/stdc++.h> #define ll long long using namespace std; ll a,b; void solve(ll x,ll y){ ll p,q; if(x>y)swap(x,y); ll cha=abs(x-y); for(register int i=1;i*i<=cha;++i){ if(cha%i==0&&(i+cha/i)%2==0){ //p-q=i;p+q=cha/i; p=(i+cha/i)/2;//大的 q=p-i;//小的 cout<<p*p+x<<endl; } } } int main(){ cin>>a>>b; solve(a,b); return 0; } /* 今天你AC了几题? 不要颓废!!!! Dalao has AKed IOI several times!!! */
结果
芜湖,完美结束这道题了!QwQ
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 零经验选手,Compose 一天开发一款小游戏!
· 因为Apifox不支持离线,我果断选择了Apipost!
· 通过 API 将Deepseek响应流式内容输出到前端