首页 > 其他分享 >蓝桥杯2023年A组-试题B-有奖问答

蓝桥杯2023年A组-试题B-有奖问答

时间:2024-04-06 16:22:06浏览次数:28  
标签:分数 归零 答题 int 有奖 蓝桥 小蓝 2023 dp

0.题目

小蓝正在参与一个现场问答的节目。
活动中一共有 30 道题目,每题只有答对和答错两种情况,每答对一题得 10 分,答错一题分数归零。
小蓝可以在任意时刻结束答题并获得目前分数对应的奖项,之后不能再答任何题目。
最高奖项需要 100 分,所以到达 100 分时小蓝会直接停止答题。
已知小蓝最终实际获得了 70 分对应的奖项,请问小蓝所有可能的答题情况有多少种?
本题的结果为一个整数,在提交答案时只输出这个整数,输出多余的内容将无法得分。

1.题解

1.1 线性dp

思路

设置dp[i][j],其中i代表小蓝当前做了i题,j表示小蓝当前计分的题目数(分数 = j * 10)
注意:
1.小蓝可以在任意时刻结束答题并获得当前分数,所以我要计算出所有当分数
2.(j!=0) dp[i][j] = dp[i-1][j-1]; 如果当前j!=0,也就是不是归零的情况,从前一次,分数少一分的情况继承次数即可
(j0) dp[i][0] = dp[i-1][0-9];如果 j0, 说明遇到归零情况,所有分数全部归零,包含前一次所有情况,本次分数归零达到当前情况
3.注意到最高奖项100分,所以j的最大值设置为9,记录10是没有意义的,此时已经停止答题,不可能再遇到符合满70分的情况.

代码

#include<bits/stdc++.h>
using namespace std;
int dp[31][10];

int main() {
	dp[0][0] = 1;
	int ans = 0;
	for (int i = 1; i <= 30; i++) {
		for (int j = 0; j <= 9; j++) {
			if(j) dp[i][j] = dp[i-1][j-1];
			else {
				for(int k = 0; k <= 9; k++) {
					dp[i][j] += dp[i-1][k];
				}
			}
		}
		ans += dp[i][7];
	}
	cout << ans; 
}

1.2 搜索

思路

代码


标签:分数,归零,答题,int,有奖,蓝桥,小蓝,2023,dp
From: https://www.cnblogs.com/trmbh12/p/18117530

相关文章

  • 第二十五周代码(蓝桥杯查缺补漏)
    2024/03/31    周日填充题目链接【参考代码】想用暴力,没过//枚举,未出结果QAQ#include <bits/stdc++.h>using namespace std;string s00 = "00";string s11 = "11";int ans = 0;//m个问号,子串有2^m种,使用dfs//初步思路:分割子串,直到只有两......
  • 从 UniAD 到智驾 AGI,解读智驾新趋势(2023.09)
    9月12日,由商汤绝影「绝世高手」联合行业自媒体「汽车之心」行家说栏目,邀请到重磅嘉宾:上海人工智能实验室青年科学家李弘扬、青年科学家蔡品隆,商汤研究院研发总监卢乐炜、商汤研究院算法研究员邓瀚铭,一同与大家分享《从UniAD到智驾AGI,解读智驾新趋势》,深入解读UniAD技术亮......
  • 蓝桥杯2023年A组-试题A-幸运数
    0.题目1.题解1.1暴力枚举思路这是一个填空题,所以可以直接暴力枚举注意:1.要是想要求位数:使用log10(abs(num))+12.%求余两边都必须是整数,pow(10,halfDigits);的返回值是double,这里必须转换代码#include<iostream>#include<cmath>boolisLuckyNumber(intn......
  • LG_P8728 [蓝桥杯 2020 国 B] 填空问题 题解
    蓝桥杯2020国BP8728题解A题直接写Python暴力一下。Output:563故答案为\(563\)。B题直接写Python暴力一下(欸怎么又来了)。总之就是写一个DFS,枚举每一个向外走,步数\(x\)满足\(x\le2020\)的点就好啦!Output:20312088故答案为\(20312088\)。C题直......
  • 蓝桥杯:七步诗 ← bfs
    【题目来源】https://www.lanqiao.cn/problems/3447/learning/【题目描述】煮豆燃豆苴,豆在釜中泣。本是同根生,相煎何太急?---曹植所以,这道题目关乎豆子!话说赤壁之战结束后,曹操的船舰被刘备烧了,引领军队从华容道撤退,路上遇到了泥泞,道路不通畅,又刮起了大风,没办法,只好让羸弱的......
  • 蓝桥杯 试题 基础练习 Fibonacci数列
    问题描述Fibonacci数列的递推公式为:Fn=Fn-1+Fn-2,其中F1=F2=1。当n比较大时,Fn也非常大,现在我们想知道,Fn除以10007的余数是多少。输入格式输入包含一个整数n。输出格式输出一行,包含一个整数,表示Fn除以10007的余数。说明:在本题中,答案是要求Fn除以10007的余数,因此我们只要......
  • 蓝桥杯备考随手记: Scanner 类中常用方法
    Scanner类是Java中用于从标准输入、文件或其他输入流中读取数据的类。它提供了一系列方法来读取不同类型的数据,例如整数、浮点数、字符串等。在Java中,Scanner类位于java.util包中,使用时需要先导入该包。使用Scanner类需要先创建一个Scanner对象,并将要读取的输入流传递给它的......
  • 蓝桥杯_省_21B_E_路径(c++)
    题目描述小蓝学习了最短路径之后特别高兴,他定义了一个特别的图,希望找到图中的最短路径。小蓝的图由2021个结点组成,依次编号1至2021。对于两个不同的结点a,b,如果a和b的差的绝对值大于21,则两个结点之间没有边相连;如果a和b的差的绝对值小于等于21,则两个点之间......
  • 全球变暖蓝桥杯2018省赛真题
    全球变暖蓝桥杯2018省赛真题DFS大法全球变暖#include<bits/stdc++.h>usingnamespacestd;#defineintlonglongboolflag;chara[1010][1010];intcnt,n,ans=0,pre_ans=0,d[4][2]={1,0,-1,0,0,1,0,-1};voiddfs(intx,inty){if(x>=n||x<0||y>=n||y<0||a......
  • 蓝桥杯备考随手记: 常用的三种排序算法(冒泡排序、插入排序、选择排序)
    1.冒泡排序(BubbleSort)冒泡排序是一种简单直观的排序算法,在待排序序列中不断地交换相邻两个元素的位置,通过多次遍历,将最大(或最小)的元素逐渐向右(或左)移动到正确的位置,直到整个序列有序。冒泡排序的基本思想如下:从序列的第一个元素开始,比较相邻两个元素的大小。如果前一个元......