UVALive 6862——结论题&&水题

Posted lfri

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了UVALive 6862——结论题&&水题相关的知识,希望对你有一定的参考价值。

题目

链接

题意:求满足$0 \leq x \leq y \leq z \leq m$且$x^j + y^j = z^j, \ j=2 \cdots n$的三元组的对数

分析

由费马大定理:整数$n >2$时,关于$x, y, z$的方程  $x^n + y^n = z^n$ 没有正整数解。

因此,我们只需考虑$j=2$的情况。对于$j>2$时,只存在$x=0, \ y=z$的解.

 1 #include<bits/stdc++.h>
 2 using namespace std;
 3 
 4 typedef long long ll;
 5 int m, n;
 6 
 7 int  main()
 8 
 9     while(scanf("%d%d", &m, &n)==2)
10     
11         int ans = 0;
12         for(int i = 0;i <= m;i++)
13         for(int j = i;j <= m;j++)
14         
15             //if(i + j <= m)  ans++;
16             int z = sqrt(i * i + j * j);
17             if(z * z == (i*i + j*j) && z <= m && z >= j) ans++;
18         
19         printf("%d\n", ans + (n-2)*(m+1));
20     
21     return 0;
22 

 

以上是关于UVALive 6862——结论题&&水题的主要内容,如果未能解决你的问题,请参考以下文章

结论题+英语阅读理解——1266E

CodeForces - 1498E Two Houses(交互+图论,结论题)

bzoj4401块的计数 结论题

[bzoj1369][Baltic2003]Gem_树形dp_结论题

ECNU620数学题(结论题)

bzoj 5085: 最大——结论题qwq