首页 > 其他分享 >蓝桥杯2024年第十五届省赛A组-有奖问答

蓝桥杯2024年第十五届省赛A组-有奖问答

时间:2024-10-05 13:18:14浏览次数:7  
标签:std 2024 int dfs 蓝桥 score long 省赛 dp

题目描述

小蓝正在参与一个现场问答的节目。活动中一共有 30 道题目,每题只有答对和答错两种情况,每答对一题得 10 分,答错一题分数归零。

小蓝可以在任意时刻结束答题并获得目前分数对应的奖项,之后不能再答任何题目。最高奖项需要 100 分,所以到达 100 分时小蓝会直接停止答题。

已知小蓝最终实际获得了 70 分对应的奖项,请问小蓝所有可能的答题情况有多少种?

方法一

深度优先搜索(dfs)

#include <bits/stdc++.h>
#define int long long
#define endl '\n'
using namespace std;

int ans = 0;

void dfs(int k, int score)
{
	if(score == 70)
	{
		ans++;
	}
	if(k > 30 || score >= 100)
	{
		return;
	}
	dfs(k + 1, score + 10);
	dfs(k + 1, 0); 
}

signed main()
{
	std::ios::sync_with_stdio(false);
	std::cin.tie(nullptr);
	dfs(1, 0);
	cout << ans << endl;
	return 0;
}

方法二

动态规划(dp)

dp[i][j] 表示答对了 i 题,获得了 j * 10 分共有几种可能

转移方程:
当 j ≠ 0,dp[i][j] += dp[i - 1][j - 1]
当 j = 0,dp[i][0] = dp[i - 1][p](p从0~9)

#include <bits/stdc++.h>
#define int long long
#define endl '\n'
using namespace std;

int dp[35][15];
int ans = 0;

signed main()
{
	std::ios::sync_with_stdio(false);
	std::cin.tie(nullptr);
	dp[0][0] = 1;
	for(int i = 1; i <= 30; i++)
	{
		for(int j = 0; j <= 9; j++)
		{
			if(j != 0)
			{
				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 << endl;
	return 0;
}

标签:std,2024,int,dfs,蓝桥,score,long,省赛,dp
From: https://blog.csdn.net/hehe_666888/article/details/142713562

相关文章

  • R3CTF2024 WP
    一、PWN1.Nullullullllu在直接给libc_base的情况下,一次任意地址写\x00。直接修改 IO_2_1_stdin 的_IO_buf_base末尾为\x00,那么_IO_buf_base就会指向 IO_2_1_stdin 的_IO_write_base,接下来就是利用getchar函数触发写操作修改 IO_buf_base 为 IO_2_1_stdout ,再......
  • [赛记] 多校A层冲刺NOIP2024模拟赛01【衡中】
    构造字符串50pts错解50pts;考虑正解,对于题目中的要求,我们可以转换成若干个相等与不等的操作,若相等则用并查集合并一下,不等则连边,若同块连边则无解,否则从前往后遍历赋值,每次找所连边其它块值的$\operatorname{mex}$即可;时间复杂度:$\Theta(nm\alpha(n))$;点击查看代码#i......
  • WMCTF 2024 wp
    WEBPasswdStealer前言本来题目叫PasswdStealer的:)考点就是CVE-2024-21733在SpringBoot场景下的利用。漏洞基本原理参考 https://mp.weixin.qq.com/s?__biz=Mzg2MDY2ODc5MA==&mid=2247484002&idx=1&sn=7936818b93f2d9a656d8ed48843272c0不再赘述。SpringBoot场景下的利用前文的分析......
  • 2024.10.4(周五)
    <%@pagelanguage="java"contentType="text/html;charset=UTF-8"pageEncoding="UTF-8"%><!DOCTYPEhtml><html><head><title>工资核算信息</title><style>/*整体页面布局和样式*/......
  • 2024.10.7(周一)
    <%@pagelanguage="java"contentType="text/html;charset=UTF-8"pageEncoding="UTF-8"%><!DOCTYPEhtml><html><head><title>车间班组</title><style>/*整体页面布局和样式*/......
  • 《代码大全》阅读笔记1(2024.10.4)
    第一章:引言软件构建的艺术:介绍了软件开发的复杂性,以及编写高质量代码的重要性。强调了良好的编码习惯不仅能提高代码的可读性和可维护性,也能降低后期的开发成本。第二章:软件构建的哲学质量的重要性:讨论了软件质量的定义,强调高质量软件不仅包括功能的正确性,还包括可维护性、......
  • 2024.9.30(周一)
    <%@pagelanguage="java"contentType="text/html;charset=UTF-8"pageEncoding="UTF-8"%><!DOCTYPEhtml><html><head><title>产品批次</title><style>/*整体页面布局和样式*/......
  • 2024.10.2(周三)
    <%@pagelanguage="java"contentType="text/html;charset=UTF-8"pageEncoding="UTF-8"%><!DOCTYPEhtml><html><head><title>生产工序信息</title><style>/*整体页面布局和样式*/......
  • 2024.10.1(周二)
    <%@pagelanguage="java"contentType="text/html;charset=UTF-8"pageEncoding="UTF-8"%><!DOCTYPEhtml><html><head><title>生产制令</title><style>/*整体页面布局和样式*/......
  • 2024.10.3(周四)
    <%@pagelanguage="java"contentType="text/html;charset=UTF-8"pageEncoding="UTF-8"%><!DOCTYPEhtml><html><head><title>质量检验信息</title><style>/*整体页面布局和样式*/......