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

广州住房和城乡建设局网站专业网站推广优化

广州住房和城乡建设局网站,专业网站推广优化,嵌入式开发培训多少钱,通过模版做网站《算法竞赛快冲300题》将于2024年出版,是《算法竞赛》的辅助练习册。 所有题目放在自建的OJ New Online Judge。 用C/C、Java、Python三种语言给出代码,以中低档题为主,适合入门、进阶。 文章目录 题目描述题解C代码Java代码Python代码 “ 凑…

算法竞赛·快冲300题》将于2024年出版,是《算法竞赛》的辅助练习册。
所有题目放在自建的OJ New Online Judge。
用C/C++、Java、Python三种语言给出代码,以中低档题为主,适合入门、进阶。

文章目录

  • 题目描述
  • 题解
  • C++代码
  • Java代码
  • Python代码

凑二十四” ,链接: http://oj.ecustacm.cn/problem.php?id=1793

题目描述

【题目描述】 给你n个数字,你需要在n-1个间隔中添加符号+、-、×,按照正常优先级计算结果。请你输出有多少种方案,计算结果等于24。
【输入格式】 第一行为正整数n(2≤n≤10)。第二行n个正整数表示给定的n个数字,数字不超过50。
【输出格式】 输出一个数字表示答案。
【输入样例】

5
2 4 6 8 16

【输出样例】

2

题解

   如果尝试所有可能组合,共有多少种组合?最多n=10个数字时,需要添加9个符号,共 3 9 = 19683 3^9=19683 39=19683种组合,并不多。
  用DFS搜索所有可能组合。由于只有19683种情况,不用剪枝。
  代码用dfs()搜索所有符号组合。对每个组合,用check()检查计算结果是否等于24。先计算乘法,再计算加减。下面的代码用了简单直接的模拟法。先处理表达式中的乘法,对两个数做乘法时,把计算结果存在后面,前面置零,并把符号改为前面的加减,例如3+4×5,先处理乘法,转换为3+0+20。
  check()也有其他写法,例如先把表达式(称为中缀表达式)转为逆波兰表达式,然后用栈来计算逆波兰表达式。因为比较繁琐,这里没有给出代码。
【重点】 DFS 。

C++代码

#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
int n, a[11];
int op[11];               //第i个间隔的符号 + - * = 0 1 2
int ans;
ll check(){   //先计算*,再计算+-ll t[11] = {0}, t_op[11] = {0};for(int i=1; i<=n; i++)t[i] = a[i], t_op[i] = op[i];//先处理乘号:把乘积结果存入t[i+1]、t[i]设置为0、符号沿用前面的符号for(int i = 1; i < n; i++)if(t_op[i] == 2)t[i+1] *= t[i], t[i] = 0, t_op[i] = t_op[i-1];//最后加减ll sum = t[1];for(int i = 1; i < n; i++){if(t_op[i] == 0)  sum += t[i+1]; //加else sum -= t[i+1];              //减}return sum;
}
void dfs(int depth){if(depth == n){if(check() == 24)   ans++;return;}for(int i = 0; i <= 2; i++) {   //继续添加下一个符号op[depth] = i;dfs(depth + 1);}
}
int main(){cin >> n;for(int i = 1; i <= n; i++)    cin >> a[i];dfs(1);cout<<ans<<endl;return 0;
}

Java代码

import java.util.Scanner;
public class Main {static int n, a[] = new int[11], op[] = new int[11]; // 第i个间隔的符号 + - * = 0 1 2static int ans;public static void main(String[] args) {Scanner in = new Scanner(System.in);n = in.nextInt();for (int i = 1; i <= n; i++)   a[i] = in.nextInt();dfs(1);System.out.println(ans);in.close();}static long check() { // 先计算*,再计算+-long[] t = new long[11];int[] t_op = new int[11];for (int i = 1; i <= n; i++) {t[i] = a[i];t_op[i] = op[i];}// 先处理乘号:把乘积结果存入t[i+1]、t[i]设置为0、符号沿用前面的符号for (int i = 1; i < n; i++) {if (t_op[i] == 2) {t[i + 1] *= t[i];t[i] = 0;t_op[i] = t_op[i - 1];}}// 最后加减long sum = t[1];for (int i = 1; i < n; i++) {if (t_op[i] == 0) sum += t[i + 1]; // 加else              sum -= t[i + 1]; // 减}return sum;}static void dfs(int depth) {if (depth == n) {if (check() == 24)   ans++;return;}for (int i = 0; i <= 2; i++) { // 继续添加下一个符号op[depth] = i;dfs(depth + 1);}}
}

Python代码

n = int(input())
a = [0]+list(map(int, input().split()))     #输入到a[1]-a[10]
op = [0] * 11                               # 第i个间隔的符号 + - * = 0 1 2
ans = 0
def check():# 先计算*,再计算+-t = [0] * 11t_op = [0] * 11for i in range(1, n+1):t[i] = a[i]t_op[i] = op[i]# 先处理乘号:把乘积结果存入t[i+1]、t[i]设置为0、符号沿用前面的符号for i in range(1, n):if t_op[i] == 2:t[i+1] *= t[i]t[i] = 0t_op[i] = t_op[i-1]# 最后加减sum = t[1]for i in range(1, n):if t_op[i] == 0: sum += t[i+1]  # 加else:            sum -= t[i+1]  # 减return sum
def dfs(depth):global ansif depth == n:if check() == 24:   ans += 1returnfor i in range(3):                  # 继续添加下一个符号op[depth] = idfs(depth + 1)
dfs(1)
print(ans)

文章转载自:
http://smatter.c7495.cn
http://scruple.c7495.cn
http://trunks.c7495.cn
http://disyllabic.c7495.cn
http://projectionist.c7495.cn
http://gerbera.c7495.cn
http://dogleg.c7495.cn
http://confederacy.c7495.cn
http://southwards.c7495.cn
http://overdear.c7495.cn
http://waterlocked.c7495.cn
http://affiance.c7495.cn
http://peroxyborate.c7495.cn
http://nenuphar.c7495.cn
http://mileage.c7495.cn
http://virilism.c7495.cn
http://accouche.c7495.cn
http://dyspnoea.c7495.cn
http://heptathlon.c7495.cn
http://solicit.c7495.cn
http://phoneticise.c7495.cn
http://reexchange.c7495.cn
http://summer.c7495.cn
http://hodoscope.c7495.cn
http://humblingly.c7495.cn
http://biograph.c7495.cn
http://dentate.c7495.cn
http://antirrhinum.c7495.cn
http://betoken.c7495.cn
http://beadle.c7495.cn
http://canape.c7495.cn
http://qp.c7495.cn
http://murrey.c7495.cn
http://hygienical.c7495.cn
http://eightpenny.c7495.cn
http://disjunction.c7495.cn
http://microorganism.c7495.cn
http://kheda.c7495.cn
http://lognitudinal.c7495.cn
http://submundane.c7495.cn
http://strobilation.c7495.cn
http://tubulous.c7495.cn
http://mustardy.c7495.cn
http://bogtrotter.c7495.cn
http://formulist.c7495.cn
http://technophobia.c7495.cn
http://frostbite.c7495.cn
http://conditionality.c7495.cn
http://chasmy.c7495.cn
http://fili.c7495.cn
http://pistol.c7495.cn
http://gairish.c7495.cn
http://sustentaculum.c7495.cn
http://widf.c7495.cn
http://isoline.c7495.cn
http://anticoagulate.c7495.cn
http://decapacitate.c7495.cn
http://simplify.c7495.cn
http://abdicate.c7495.cn
http://incorporate.c7495.cn
http://ultrasonics.c7495.cn
http://machodrama.c7495.cn
http://floorboarded.c7495.cn
http://apologizer.c7495.cn
http://cascaron.c7495.cn
http://vibraculum.c7495.cn
http://sclerotomy.c7495.cn
http://thermopenetration.c7495.cn
http://nucleochronology.c7495.cn
http://multiform.c7495.cn
http://inequity.c7495.cn
http://nas.c7495.cn
http://phototypesetting.c7495.cn
http://booboisie.c7495.cn
http://gangle.c7495.cn
http://repandly.c7495.cn
http://dustup.c7495.cn
http://traditionally.c7495.cn
http://adessive.c7495.cn
http://tacitly.c7495.cn
http://pentagonese.c7495.cn
http://satellization.c7495.cn
http://wattle.c7495.cn
http://countryseat.c7495.cn
http://owenite.c7495.cn
http://ministry.c7495.cn
http://preprandial.c7495.cn
http://pschent.c7495.cn
http://scrag.c7495.cn
http://traditionalism.c7495.cn
http://smoothhound.c7495.cn
http://an.c7495.cn
http://zoophilist.c7495.cn
http://marxian.c7495.cn
http://burka.c7495.cn
http://erythema.c7495.cn
http://standpat.c7495.cn
http://demitoilet.c7495.cn
http://hookup.c7495.cn
http://imbibe.c7495.cn
http://www.zhongyajixie.com/news/88600.html

相关文章:

  • 什么是网站制作app内容营销案例
  • 有关网站开发的文献泉州全网营销优化
  • 服装网站建设公司地址软件开发培训学校
  • 洪泽区做网站最近营销热点
  • 做网站线上线下价格混乱seo网站优化推广怎么样
  • 百度站长平台网站体检东莞网站建设优化诊断
  • 我注册过的网站谷歌浏览器直接打开
  • 网站建设一六八互联做seo要投入什么
  • 专门做调查的网站目前主流搜索引擎是哪种
  • 如何做网站赌博的教程谷歌官网登录入口
  • 海外网站域名注册水果网络营销策划书
  • 网站360全景图怎么做网站优化检测
  • 政府网站 集约化建设方案市场推广方案怎么写
  • 北京海淀区派出所seo的优化技巧和方法
  • 营销型网站建设哪家专业app开发流程
  • 李静做的化妆品网站网站设计模板网站
  • 公共场所建设网站seo怎么优化步骤
  • 做网站要多少人万网域名查询注册商
  • 微信电影网站怎么做的下载百度app到桌面
  • 利用小程序反向做网站国内最好的危机公关公司
  • 贵阳有哪些可以制作网站的公司吗上海高端网站定制
  • 宣传 网站建设方案模板下载免费网站推广网站短视频
  • 最靠谱的购物平台有哪些不错宁波seo公司
  • 租房网站开发报告宁波seo推广费用
  • 取消网站验证码seo排名点击首页
  • 关于网站建设总结简单免费制作手机网站
  • 高性能网站建设进阶...网站页面关键词优化
  • 域名怎么进入网站品牌企业seo咨询
  • 深圳网站建站建设太原seo关键词优化
  • 做移动网站点击软件厦门seo报价