当前位置: 首页 > news >正文

第3关:完美综合运算式

任务描述
本关任务:完美综合运算式
以下含乘方(a^b即为a的b次幂)、加、减、乘、除的综合运算式(1)的右边为一位的非负整数f,请把数字0,1,2,…,9这10个数字中不同于数字 f 的 9个数字不重复地填入式(1)左边的9个□中,(约定数字“1”、“0”不出现在(1)式左边的一位数中,且“0”不为首位),使得该综合运算式成立:
   □^□+□□÷□-□□□×□=f       (1)
 满足上述要求的表达式(1)称为完美综合运算式。
 输入非负整数f(0≤f≤9),输出相应的完美综合运算式。

编程要求
根据提示,在右侧编辑器补充代码,输出相应的完美综合运算式。

测试说明
平台会对你编写的代码进行测试:

测试输入:5;
预期输出:
1: 2^9+78/6-130*4=5
2: 9^3+64/2-108*7=5

测试输入:6;
预期输出:
1: 2^9+80/5-174*3=6
2: 5^4+18/9-207*3=6
3: 9^3+50/2-187*4=6

代码:

#include "bits/stdc++.h"
using namespace std;
int main()
{
 /********* Begin *********/


  int f;cin>>f;
  int cnt=0;
	vector<int> a;
	for (int i=0;i<=9;i++){
		if(i!=f){
			a.push_back(i);
		}
	}
   
   do
   {
     if (min({a[0],a[1],a[2],a[4],a[5],a[8]})==0) continue;
     if (a[0]==1 or a[1]==1 or a[4]==1 or a[8]==1) continue;

     if (pow(a[0],a[1])+(double)(a[2]*10+a[3])/(double)a[4]-(a[5]*100+a[6]*10+a[7])*a[8]==f)
     {
       cout<<++cnt<<':';
       cout<<a[0]<<'^'<<a[1]<<'+'<<a[2]<<a[3]<<'/'<<a[4]<<'-'<<a[5]<<a[6]<<a[7]<<'*'<<a[8]<<'='<<f<<endl;
     }
   }while (next_permutation(a.begin(),a.begin()+9));

    /********* end *********/
  if(cnt==0) printf("No perfect expression.\n");

 return 0;
}

相关文章:

  • 如何修改 Ubuntu 软件源(镜像源)
  • Javascript进阶
  • Kotlin中使用DataBinding绑定RecyclerView并数据两列显示
  • 点云大数据在低空经济中的应用:三维激光雷达技术探索
  • 12.16some pro about py model
  • QT中的布局管理
  • 火绒终端安全管理系统V2.0--分层防御之内容过滤层
  • MongoDB 和 Elasticsearch的区别、优缺点对比,以及选型建议
  • PyQt基础——简单的图形化界面(窗口)
  • Mybatis的基本使用
  • 描述符(descriptor)协议如何实现Python的属性访问控制?
  • CV:图像的直方图均衡化
  • pyinstall将python打包成.exe运行时就不需要python环境了
  • 防止手机验证码被刷:React + TypeScript 与 Node.js + Express 的全面防御策略
  • 【Repos系列】Bandersnatch同步原理
  • docker安装及使用介绍
  • 前端构建工具进化论:从Grunt到Turbopack的十年征程
  • 广播机制(Broadcasting)
  • vue3 前端路由权限控制与字典数据缓存实践(附Demo)
  • STM32F407 cubeIDE Bootloader APP 如何写
  • 贵州已设立省地质矿产局、省地质矿产开发院
  • 中国需加强自主创新和国际合作,提升产业链供应链韧性
  • 90后青年学者李海增逝世9个月后文章登上顶刊,同仁缅怀其贡献
  • 住建部:截至去年底常住人口城镇化率达到67%
  • 红星控股重整期间实控人被留置后续:重整草案不会修改,涉车建兴职责已调整
  • 完善劳动关系协商协调机制,《共同保障劳动者合法权益工作指引》发布