• 洛谷P5613 黑蚊子多


    题目背景
    性★感☆大★草 在☆线★开☆门
    定☆数★一☆零 实★则☆虚★高
    加★速☆转★圈 开☆幕★雷☆击
    疯☆狂★交☆互 劲★爆☆咚★咚
    黑★蚊☆子★多 邀☆您★来☆爽
    超☆越★模☆式 直★角☆旋★钮
    山★东☆卫★星 马☆上★联☆动
    变☆成★十☆加 已★经☆爽★爆

    题目描述
    Hikari 的面前有 n(1\leq n\leq 1000)n(1≤n≤1000) 级台阶,每 1s1s 她可以向上跳 m(1\leq m\leq n)m(1≤m≤n) 级台阶。(不在中间的台阶上停留)

    台阶上有 k(k\leq 10)k(k≤10) 个特殊的平台 a_ia
    i

    ,Hikari 在该平台 停留 时会使得 mm 增加 11。

    请问 Hikari 到达台阶顶部花费的时间。

    输入格式
    共 22 行。

    第 11 行输入 33 个非负整数 n,m,kn,m,k。

    第 22 行输入 kk 个正整数,第 ii 个正整数表示 a_ia
    i

    ,保证输入的 a_ia
    i

    单调递增。

    输出格式
    共 11 行,输出 11 个正整数表示花费的时间。

    输入输出样例
    输入 #1复制
    10 5 0
    输出 #1复制
    2
    输入 #2复制
    31 4 2
    8 13
    输出 #2复制
    6
    说明/提示
    子任务
    对于 60%60% 的数据,k=0k=0。

    对于 100%100% 的数据,1\leq m\leq n\leq 10001≤m≤n≤1000,k\leq 10k≤10。

    题目来源
    MtOI2019 Extra Round T1

    出题人:disangan233
    上代码:

    #include
    using namespace std;
    int n,m,k,ans,x,a[1100];
    int main()
    {
    	cin>>n>>m>>k;
    	for(int i=1;i<=k;i++)
    	{
    		scanf("%d",&x);
    		a[x]=1;
    	}//读入,把哪些点m会加一标记出来
    	x=0;//从零开始
    	while(x<n)//还没有走到n
    	{
    		x+=m;//往前走
    		if(a[x])m++;//如果走到x时m应该加一,那么m++
    		ans++;//步数加一
    	} 
    	cout<<ans;//输出步数
    	return 0;
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
  • 相关阅读:
    面试 Java 并发编程八股文十问十答第四期
    设计模式之门面模式
    【sklearn | 3】时间序列分析与自然语言处理
    AI系列:大语言模型的function calling(下)- 使用LangChain
    GBase 8c 备份控制函数(一)
    从源码分析 MySQL 身份验证插件的实现细节
    万字 HashMap 详解,基础(优雅)永不过时
    Linux系统挂载硬盘
    shell中hiveSQL的split
    Python潮流周刊#1:如何系统地自学Python?
  • 原文地址:https://blog.csdn.net/lzx_xzl_______/article/details/126165586