优美的立方质数

news/2024/5/18 23:39:27 标签: c++, 算法, 枚举

题目描述

如果一个质数能被表示为三个不同的质数的和的形式,那么我们称它为立方质数。现在给你一个数n,判断它是不是立方质数。

输入数据

正整数n,n<=1000

输出数据

Yes或者No

 代码

#include<iostream>
#include<math.h>
using namespace std;

#define YES {cout<<"Yes"<<endl; exit(0);}
#define NO {cout<<"No"<<endl; exit(0);}

bool is_prime(int x) {
	int max_factor = sqrt(x);
	for (int i = 2; i <= max_factor; ++i) {
		if (x % i == 0) return false;
	}
	return true;
}

int main() {
	int n;
	cin >> n;
	if (n < 2 || n > 1000 || !is_prime(n)) NO;

	for (int p1 = 2, p1_max = n / 3; p1 <= p1_max; ++p1) {
		if (is_prime(p1)) {
			int remanent = n - p1;
			for (int p2 = p1 + 1, p2_max = remanent / 2; p2 <= p2_max; ++p2) {
				int p3 = remanent - p2;
				if (is_prime(p2) && p3 != p2 && is_prime(p3)) YES;
			}
		}
	}
	NO;
}


http://www.niftyadmin.cn/n/1817126.html

相关文章

Error: The apk for your currently selected variant (app-release.apk) is not signed

文章目录问题描述解决办法问题描述 选release运行时&#xff0c;提示 解决办法 点击右侧Fix按钮 添加名为release的签名配置 Build-Edit Build Types… 选择刚才的release 我们会看到app下的build.gradle增加了&#xff0c;以下代码&#xff0c;问题就解决了 可能遇到…

lucky number

题目描述 李老师的lucky number 是3&#xff0c;5和7&#xff0c;他爱屋及乌&#xff0c;还把所有质因数只有3&#xff0c;5&#xff0c;7的数字认定为lucky number&#xff0c;比如9, 15, 21, 25等等。请聪明的你帮忙算一算小于等于x的lucky number有多少个&#xff1f; 输入…

Android APP整合微信分享

微信开放平台-官方文档-Android接入指南 微信开放平台-官方文档-Android资源下载 文章目录运行官方demo自己项目分享文字分享到朋友圈分享之后回调运行官方demo 想要运行官方的demo可能需要以下几步 上面下载的项目可能报错&#xff0c;首先修改gradle-wrapper.properties中…

思维之花-简单背包

目录 题目描述 输入数据 输出数据 思路 代码&#xff08;含注释&#xff09; 题目描述 李老师正准备暑假旅行&#xff0c;他有一个容量为L的行李箱和n个物品&#xff08;n不超过20&#xff09;&#xff0c;每个物品都有自己的体积&#xff0c;物品可以放入行李箱&#xf…

Android动态添加View

文章目录addView的使用在LinearLayout中的使用addView(View child)addView(View child, int index)小结在RelativeLayout中的使用index在RelativeLayout中有用吗&#xff1f;动态添加View我们就要通过addView的方式动态向布局中添加View。(ps:addView是ViewGroup中特有的方法&a…

通过PackageManager、PackageInfo、ApplicationInfo、ActivityInfo获得你想要的 App 信息

文章目录PackageManager介绍获取PackageInfoApplicationInfo获取ApplicationInfo通过ApplicationInfo来获取应用程序的基本信息ActivityInfoPackageManager 介绍 有些场景下&#xff0c;我们会需要获取一些其它 App 的各项信息&#xff0c;例如&#xff1a;App 名称&#xff…

【Git】Android Studio中使用Git(日常操作)

文章目录clone远程项目提交文件分支操作创建分支dev并提交修改合并分支删除分支clone远程项目 VCS-Checkout from Version Control-Git clone成功 提交文件 1、每次提交前需要先更新项目&#xff0c;原因是如果是多人合作的项目&#xff0c;需要先将远程仓库中他人提交的…

Android中定时器的实现

文章目录采用Handler的postDelayed(Runnable, long) 方法采用Handler的postDelayed(Runnable, long) 方法 1、首先创建一个Handler对象 Handler handlernew Handler();2、然后创建一个Runnable对象 Runnable runnable new Runnable() {Overridepublic void run() {//这里写…