题解:P14789 [NERC 2025] Honey Cake
LiuHongshen · · 题解
P14789 [NERC 2025] Honey Cake 题解
题目传送门
题目大意
给定一个大小为
做法分析
枚举
代码实现
#include<bits/stdc++.h>
using namespace std;
#define endl '\n'
#define kuaitou ios::sync_with_stdio(0);cin.tie(0);cout.tie(0);
#define baoliu(n) fixed<<setprecision(n)
vector<int> a;
int main(){
kuaitou;
long long x,y,z,n,b;
cin>>x>>y>>z>>n;
for(int i=1;i*i<=n;i++){//如果是n的因子就加入数组
if(n%i==0){
a.push_back(i);
if(n/i!=i){
a.push_back(n/i);
}
}
}
//枚举数组
for(size_t i=0;i<a.size();i++){
for(size_t j=0;j<a.size();j++){
if(n%(a[i]*a[j])!=0){//如果不能被整除
continue;
}
b=n/(a[i]*a[j]);//另一条边的切割次数
if(x%a[i]==0&&y%a[j]==0&&z%b==0){//如果都能被整除
cout<<a[i]-1<<" "<<a[j]-1<<" "<<b-1;//输出
return 0;
}
}
}
cout<<"-1";
return 0;
}
AC记录