回 帖 发 新 帖 刷新版面

主题:[原创]大数学家的问题

大数学家的问题(math.pas/exe/in/out)

小帆子是世界著名的思想家、教育家、哲学家、数学家,小帆子最突出的成就是数学,小帆子最近在证明歌德巴赫猜想,据说就快证明出来了。
小帆子不分日夜的证明歌德巴赫猜想,非常劳累,为了调节一下自己的大脑,小帆子随便选了几道弱智的数学题目来放松大脑。
这天小帆子发现一道很弱智的数学题,于是他一时心血来潮,想考考他的儿子大帆子,看看他的信息学水平如何。
题目是这样子的:
给出一个正整数N,需要求出一组解,满足X^2-N*Y^2=1。其中你求出的X,Y应该是正整数。
现在,大帆子作为OI界头号NB人物,为了做出这道题目绞尽脑汁,翻论文,找标程,依旧没有想法,现在他向你求救,当然,好处就是请你去吃肯德基,这种好事情,相信你不会拒绝吧?

输入:
    第一行是一个正整数n(n<=108)。

输出:
输出为一行,输出两个正整数X和Y(x,y<=101000)。如果无解则输出“I don't love KFC”(不需要输出引号)。

Sample In
52

Sample Out
649 90

时限:0.5秒

回复列表 (共9个回复)

沙发

如果我没想错don't的'在程序里打不出来。我建议用do not

板凳

楼上的闭嘴!
Pascal里,'用''代替!

3 楼

看着便扭

4 楼

如果只输出一组解的话,就很简单了,理论上是有很多组解的
而且不可能无解
var
n:integer;
begin
readln(n);
writeln(4*(n+1),2*n+1);
end.

5 楼

不错!可否请将公式推导演示一下?

6 楼

对不起,看错题了[em8]
现在暂时只能知道一定有解,还有就是y要满足的一些条件

7 楼

可能无解!
N=1时就无解.
用个高精度算平方,然后穷举就可以了吧.

8 楼

楼上的:
  请认真看题--------“时限:0.5秒”!!!
  当N的数目较大时,列举法可能超时。建议用数学方法推导X,Y与N的直接关系,而后
将答案打印。

9 楼

用数组解决
设有这样一个集合{(x,y)|y=sqrt((sqr(x)-1)/N),且x,y∈N}(后一个N是正整数集)
最后输出即可

我来回复

您尚未登录,请登录后再回复。点此登录或注册