第十二届蓝桥杯省赛C&C++ 研究生组-货物摆放

还是整数分解问题,注意n本身也是约数

cpp 复制代码
#include <iostream>
int main(){
  printf("2430");
  return 0;
}
cpp 复制代码
#include <iostream>
#include<cmath>
#include<algorithm>
using namespace std;
typedef long long ll;
const ll n = 2021041820210418LL;
const ll maxn = 44955998;
ll p[maxn] = {1};
int main(){
  ll sqr = (ll) sqrt(n), count = 0, num = 1;//126432 44955998
  for(int i = 2; i <= sqr; i++){
  	if(n % i == 0){
  		p[num++] = i;
  		if(i * i != n) p[num++] = n / i;
	  }
  }
  p[num] = n;	
  for(int i = 0; i <= num; i++){
  	for(int j = 0; j <= num; j++){
  		for(int k = 0; k <= num; k++){
  			if(p[i]*p[j]*p[k] == n) {
  				count++;
  				printf("%lld %lld %lld\n", p[i], p[j], p[k]);
			  }
		  }
	  }
  }
  printf("%lld", count);
  return 0;
}
相关推荐
hwtwhy7 分钟前
【情人节特辑】C 语言实现浪漫心形粒子动画(EasyX 图形库)
c语言·开发语言·c++·学习·算法
日月云棠10 分钟前
UE5 打包后 EXE 程序单实例的两种实现方法
前端·c++
XiaoHu020741 分钟前
MySQL基础(第一弹)
数据库·c++·mysql
进击的横打1 小时前
【车载开发系列】入坑RH850芯片
c语言·车载系统
Mr YiRan1 小时前
C++浅拷贝与深拷贝的原理
c++
寒秋花开曾相惜1 小时前
(学习笔记)2.2 整数表示(2.2.6 扩展一个数字的位表示)
c语言·开发语言·笔记·学习
宇木灵2 小时前
C语言基础-八、结构体和共同(用)体
c语言·开发语言·数据结构·笔记·学习·算法
plus4s2 小时前
2月21日(91-93题)
c++·算法
闻缺陷则喜何志丹2 小时前
【数论 等差数列】P9183 [USACO23OPEN] FEB B|普及+
c++·数学·数论·等差数列
拳里剑气2 小时前
C++ 11
开发语言·c++·学习方法