题意

给你一个数 $a+bj, \ j=\sqrt {-2}$,如果它只能被1、-1、本身和本身的相反数整除,则输出Yes,否则输出No.

分析

高斯整数 $a+bi$ 是素数当且仅当:

(1)$a,b$ 中有一个是0,另一个数的绝对值是形如 $4n+3$ 的素数

(2)$a,b$ 均不为0,而 $a^2+b^2$ 为素数

与判断高斯素数的方法一样,只是将 $j = \sqrt{-1}$ 改成 $j = \sqrt{-2}$, 所以把 $a^2+b^2$ 为素数这个条件改成:$a^2 + 2b^2$。$a=b=0$ 的情况还不清楚,但这题的数据不强,随便搞。

#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
ll a, b;
bool is_prime(ll x)
{
bool flag = true;
for(ll i = ;i*i <= x;i++)
{
if(x % i == )
{
flag = false;
break;
}
}
return flag;
}
int main()
{
while(scanf("%lld%lld", &a, &b) == )
{
if(a == )
{
//if(b%4 == 3 && is_prime(b)) printf("Yes\n");
//else printf("No\n");
printf("No\n");
}
else
{
if(is_prime(a*a + *b*b)) printf("Yes\n");
else printf("No\n");
}
}
return ;
}

参考链接:

1. https://blog.csdn.net/ACdreamers/article/details/10008107

2. https://blog.csdn.net/keshuai19940722/article/details/36866219

HDU2650 A math problem——高斯素数的更多相关文章

  1. UVA 1415 - Gauss Prime(数论,高斯素数拓展)

    UVA 1415 - Gauss Prime 题目链接 题意:给定a + bi,推断是否是高斯素数,i = sqrt(-2). 思路:普通的高斯素数i = sqrt(-1),推断方法为: 1.假设a或 ...

  2. hdu 1757 A Simple Math Problem (乘法矩阵)

    A Simple Math Problem Time Limit: 3000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Ot ...

  3. HDU1757 A Simple Math Problem 矩阵快速幂

    A Simple Math Problem Time Limit: 3000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Ot ...

  4. HDU 5615 Jam's math problem

    Jam's math problem Problem Description Jam has a math problem. He just learned factorization.He is t ...

  5. hdu----(5055)Bob and math problem(贪心)

    Bob and math problem Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Oth ...

  6. hdu------(1757)A Simple Math Problem(简单矩阵快速幂)

    A Simple Math Problem Time Limit: 3000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Ot ...

  7. BestCoder Round #70 Jam's math problem(hdu 5615)

    Problem Description Jam has a math problem. He just learned factorization. He is trying to factorize ...

  8. FZYZ-2071 A Simple Math Problem IX

    P2071 -- A Simple Math Problem IX 时间限制:1000MS      内存限制:262144KB 状态:Accepted      标签:    数学问题-博弈论    ...

  9. Jam's math problem(思维)

    Jam's math problem Submit Status Practice HDU 5615   Description Jam has a math problem. He just lea ...

随机推荐

  1. springcloud(五,多个服务注册中心eureka)

    spring cloud (一.服务注册demo_eureka) spring cloud (二.服务注册安全demo_eureka) spring cloud (三.服务提供者demo_provid ...

  2. Java8 新特性 Stream 非短路终端操作

    非短路终端操作 Java8 新特性 Stream 练习实例 非短路终端操作,就是所有的元素都遍厉完,直到最后才结束.用来收集成自己想要的数据. 方法有: 遍厉 forEach 归约 reduce 最大 ...

  3. linux centos7下源码 tar安装mysql5.7.22或mysql5.7.20 图文详解

    之前用的rpm安装的每次安装都是最新的,,,导致每次版本不统一... 现在用tar包安装5.7.22和5.7.20一样的   5.7.20之后的和之前的版本还是有点不一样的 官网地址 https:// ...

  4. [转] vue父组件触发子组件事件

    1. 父组件中获取子组件方法 $children 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 <template>     < ...

  5. CSS加载会阻塞页面显示?

    可能大家都知道,js执行会阻塞DOM树的解析和渲染,那么css加载会阻塞DOM树的解析和渲染吗?接下来,我们就一起来分析一下. 原理解析 那么为什么会出现上面的现象呢?我们从浏览器的渲染过程来解析下. ...

  6. thinkphp3.2 无法加载模块

    当使用thinkphp3.2时候 出现一个无法加载模块的错误的时候 不要慌张,只需要在根目录下的 index.php  加入一句话就可 define('BIND_MODULE','Home'); // ...

  7. C# 递增操作符 ++ --

    记混了好几次,记录一下 递增操作符出现在操作数之前:先递增后赋值 ; int result; result =++count; Console.WriteLine($"count:{coun ...

  8. DataGridView 行数据验证:当输入数据无效时不出现红色感叹号的Bug

    private void dgvView_CellValidating(object sender, DataGridViewCellValidatingEventArgs e){       if ...

  9. SQL 复制表到另一个表

    SqlServer 复制表结构和表数据 复制表数据到已存在的表 INSERT INTO targetTableName SELECT COLUMNS FROM sourceTableName; 复制表 ...

  10. sql中别名加as和不加as的区别

    select UserName as 用户名,PassWord as 密码 from user 与 select UserName 用户名,PassWord 密码 from user 中as用于不用的 ...