码迷,mamicode.com
首页 > 其他好文 > 详细

UVALive 6862——结论题&&水题

时间:2019-07-13 19:50:19      阅读:91      评论:0      收藏:0      [点我收藏+]

标签:没有   bit   std   scan   using   元组   blank   ref   code   

题目

链接

题意:求满足$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——结论题&&水题

标签:没有   bit   std   scan   using   元组   blank   ref   code   

原文地址:https://www.cnblogs.com/lfri/p/11181780.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!