新手天翼
#include<iostream>
using namespace std;
int c[16],a,b,d;
int main(){
bool flag=1;
for(int i=1;i<=9;i++){
for(int j=10;j<=99;j++){
for(int k=100;k<=999;k++){
c[i]++;
c[j%10]++;
c[j/10]++;
c[k%10]++;
c[k/10%10]++;
c[k/100]++;
for(int i=1;i<=6;i++){
if(c[i]==0||c[i]>1){
flag=0;
break;
}
}
if(flag==1){
if(a<i||b<j||d<k){
a=i;
b=j;
d=k;
}
}
flag=1;
}
}
}
cout<<a<<" "<<b<<" "<<d<<" "<<a*b*d;
return 0;
}
李素妍在2020-08-04 16:22:22追加了内容
顶
高级光能
- #include<iostream>
- #include<cstring>
- #include<cmath>
- using namespace std;
- int a[10],x,y,z,maxn;
- void Num(int x){
- while(x){
- a[x%10]++;
- x/=10;
- }
- }
- bool Judge(){
- for(int i=1;i<=6;i++){
- if(a[i]!=1)
- return 0;
- }
- return 1;
- }
- int main(){
- for(int i=1;i<=6;i++){
- for(int j=12;j<=65;j++){
- for(int k=123;k<=654;k++){
- memset(a,0,sizeof(a));
- Num(i);
- Num(j);
- Num(k);
- if(Judge()){
- int tmp=i*j*k;
- if(tmp>maxn)
- {
- maxn=tmp;
- x=i,y=j,z=k;
- }
- }
- }
- }
- }
- cout<<x<<" "<<y<<" "<<z<<" "<<maxn;
- return 0;
- }
- 作死,快采纳,稳对
高级天翼
代码错误挺多,改得我挺难受QAQ
1.桶数组清空问题
头文件加上#include<cstring>
第三重循环内的第一句前加上memset(c,0,sizeof(c));(清空c数组,memset函数与详细了解请自行搜索)
李泽远在2020-08-04 16:35:23追加了内容
2.第四层循环的循环变量改成t,重名了
李泽远在2020-08-04 16:36:48追加了内容
3.
最内层if判断改成:
if(a<i||b<j||d<k){
a=i;
b=j;
d=k;
}
李泽远在2020-08-04 16:38:52追加了内容
4.循环范围错误
i从1到6;
j从12到65;
k从123到654
有什么不明白的吗