CF1294C
题目简化和分析:
使得 \(a \times b\times c=n~~~~(a\ne b\ne c)\)
思路:
- 先枚举最小的 \(a\) ,(以下程序的返回值为最小因数(有部分优化),即 \(a\) 的值)
int query(int n){
if(n%2==0) return 2;
for(int i=3;i<=sqrt(n);i+=2){
if(n%i==0) return i;
}
return n;
}
- 再枚举最小的 \(b\) ,(同理)
for(int i=a+1;i<=sqrt(n);i++){
if(n%i==0){
b=i;
break;
}
}
- 得到 \(c\) ,并判断是否符合条件
Solution:
#include<bits/stdc++.h>
using namespace std;
int t,n;
int query(int n){
if(n%2==0) return 2;
for(int i=3;i<=sqrt(n);i+=2){
if(n%i==0) return i;
}
return n;
}
int main()
{
scanf("%d",&t);
while(t--){
scanf("%d",&n);
int a=query(n),b=-1,c=-1;
n/=a;
for(int i=a+1;i<=sqrt(n);i++){
if(n%i==0){
b=i;
break;
}
}
c=n/b;
if(b==-1||c==-1||b==c){
printf("NO\n");
}else{
printf("YES\n");
printf("%d %d %d\n",a,b,c);
}
}
return 0;
}
随机推荐
- stream流根据集合中的元素的属性进行去重的方法
public class StreamListTest { public static void main(String[] args) { List<Student> studentLi ...
- 获取邮箱(QQ、126、163)的客户端授权码
获取QQ邮箱的客户端授权码 1.首先登录QQ邮箱(https://mail.qq.com),然后,点击"设置"按钮. 2.点击"账户"按钮,进入"账户 ...
- influxdb常用sql总结
本文为博主原创,转载请注明出处: 1.登录influxdb influx -username admin -password "password" 2.查看数据库 ##查看有哪些数 ...
- Elasticsearch日常开发
2020-08-12 14:51:37 每次遇到ES开发,一般都是查询es里面的数据,今天我教大家一个简单的es的查询.废话不多说,直接上代码. 在pom文件中引入 <dependency> ...
- 【SpringBoot】 集成 Ehcache
SpringBoot ehcache 缓存 简介 EhCache 是一个纯 Java 的进程内缓存框架,具有快速.精干等特点, 是 Hibernate 中默认CacheProvider.Ehcache ...
- sensor有点意思之RCCB传感器
1.RCCB sensor 无意中看到一种特殊规格的传感器,RCCB (Red-Clear-Clear-Blue)sensor,第一次听到这个名词,咱不知道就查一查,检索到RCCB sensor是一种 ...
- REST API 设计最佳实践:为什么不要在URI中使用动词?
总的来说,HTTP协议出现以来Web服务也就存在了.但是,自从云计算出现后,才成为实现客户端与服务和数据交互的普遍方法. 作为一名开发者,我很幸运能够在工作中使用一些仍然存在的SOAP服务.但是,我主 ...
- 【博客索引】Welcome!!
欢迎来到 Daniel_yzy 的博客园 个人简介 初二,男,就读于长沙市一中双语实验学校. 爱好 OI,一生讨厌文化课. 当然,也是唯物主义无神论者. 已有 npy,要问是谁的话可以私下问. 博客索 ...
- Django: You are trying to add a non-nullable field 'name' to mainnav without a default; we can't do that (the database needs something to populate existing rows).
错误原因: 语句中缺少默认值 class Main(models.Model): img = models.CharField(max_length=255) name = models.CharFi ...
- Gin+Xterm.js实现远程Kubernetes Pod(一)
Xterm.js简介 xterm.js (https://xtermjs.org/)是一个开源的 JavaScript 库,它模拟了一个终端接口,可以在网页中嵌入一个完全功能的终端.这个库非常灵活,并 ...