跳房子 Ⅰ(C语言)

题目来自于博主算法大师的专栏:最新华为OD机试C卷+AB卷+OJ(C++JavaJSPy) https://blog.csdn.net/banxia_frontend/category_12225173.html

题目描述

跳房子,也叫跳飞机,是一种世界性的儿童游戏。

游戏参与者需要分多个回合按顺序跳到第 1 格直到房子的最后一格。跳房子的过程中,可以向前跳,也可以向后跳。

假设房子的总格数是 count,小红每回合可能连续跳的步教都放在数组 steps 中,请问数组中是否有一种步数的组合,可以让小红两个回合跳到量后一格?

如果有,请输出索引和最小的步数组合。

注意:

数组中的步数可以重复,但数组中的元素不能重复使用。

提供的数据保证存在满足题目要求的组合,且索引和最小的步数组合是唯一的。

输入描述

第一行输入为房子总格数 count,它是 int 整数类型。

第二行输入为每回合可能连续跳的步数,它是 int 整数数组类型。

输出描述

返回索引和最小的满足要求的步数组合(顺序保持 steps 中原有顺序)

补充说明

count ≤ 1000,0 ≤ steps.length ≤ 5000,-100000000 ≤ steps ≤ 100000000

示例一

输入

[1,4,5,2,2]
7

输出

[5,2]

示例二

输入

[-1,2,4,9,6]
8

输出

[-1,9]

说明

此样例有多种组合满足两回合跳到最后,譬如: [-1,9],[2,6],其中[−1,9]的索引和为 0+3=3,[2,6]的索和为 1+4=5,所以索引和最小的步数组合[−1,9]

代码

#include <limits.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#define MAX_LEN 2000
#define CNT_MAX 1000
int main() {
    char input[MAX_LEN];
    fgets(input, MAX_LEN, stdin);
    input[strcspn(input, "\n")] = '\0';

    int count[1000];
    int n = 0;
    char *token = strtok(input, " ,[]\n");
    while (token != NULL) {
        count[n++] = atoi(token);
        token = strtok(NULL, " ,[]\n");
    }

    int step;
    scanf("%d", &step);

    int min[2];
    min[0] = 0;
    min[1] = 0;
    for (int i = 0; i < n; i++) {
        for (int j = 0; j < n; j++) {
            if (count[i] + count[j] == step) {
                if ((min[0] == 0 && min[1] == 0) || (i + j < min[0] + min[1])) {
                    min[0] = i;
                    min[1] = j;
                }
            }
        }
    }

    printf("[%d,%d]", count[min[0]], count[min[1]]);
    return 0;
}

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/411689.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Go语言必知必会100问题-06 生产者端接口

生产者端接口 Go语言必知必会100问题-05 接口污染中介绍了程序中使用接口是有价值的。在编码的时候&#xff0c;接口应该放在哪里呢&#xff1f;这是Go开发人员经常有误解的一个问题&#xff0c;本文将深入分析该问题。 在深入探讨问题之前&#xff0c;先对提及的术语做一个定…

2024年老薛主机开工大吉活动:云服务器5折起,续费同价!

2024年老薛主机开工大吉活动开始了&#xff0c;香港/美国云服务器季付7折&#xff0c;半年付6折&#xff0c;年付5折&#xff0c;续费同价&#xff01; 活动地址&#xff1a; 点此直达老薛主机官网 活动详情&#xff1a; 老薛主机2024开年促销活动&#xff0c;香港/美国云服…

全网最全AI绘画工具汇总(二)

一.AI绘画 图像 创造人工智能艺术的方式共有多种方法&#xff0c;包括使用数字模式的程序“基于规则”的图像生成、模拟笔触和其他绘画效果的算法&#xff0c;以及人工智能或深度学习算法等。 最早的重要人工智能艺术系统之一是AARON&#xff0c;由哈罗德科恩于1960年代末开…

Pytorch添加自定义算子之(1)-安装配置Eigen库

一、安装对应的ubuntu环境 推荐使用Docker FROM nvcr.io/nvidia/pytorch:23.01-py3 RUN pip install tensorboardX RUN pip install pyyaml RUN pip install yacs RUN pip install termcolor RUN pip install opencv-python RUN pip install timm0.6.12 WORKDIR /app COPY . …

【LeetCode:2476. 二叉搜索树最近节点查询 + 中序遍历 + 有序表】

&#x1f680; 算法题 &#x1f680; &#x1f332; 算法刷题专栏 | 面试必备算法 | 面试高频算法 &#x1f340; &#x1f332; 越难的东西,越要努力坚持&#xff0c;因为它具有很高的价值&#xff0c;算法就是这样✨ &#x1f332; 作者简介&#xff1a;硕风和炜&#xff0c;…

vDPA测试环境搭建

要求&#xff1a; 运行 Linux 发行版的计算机。本指南使用 CentOS 9-stream&#xff0c;但对于其他 Linux 发行版&#xff0c;特别是对于 Red Hat Enterprise Linux 7&#xff0c;命令不应有重大变化。 具有 sudo 权限的用户 ~ 主目录中有 25 GB 的可用空间 至少 8GB 内存 …

蓝桥杯-扫雷

代码解答及思路: #include <iostream> using namespace std; int main() { int n,m; int a[100][100] {0},b[100][100];//记住要开数组确数 &#xff0c;这样外围就会有边 &#xff0c;不能直接设置值&#xff0c;要记住&#xff01;&#xff01;&#xff01;&#…

FairyGUI × Cocos Creator 3.x 场景切换

前言 前文提要&#xff1a; FariyGUI Cocos Creator 入门 FairyGUI Cocos Creator 3.x 使用方式 个人demo&#xff1a;https://gitcode.net/qq_36286039/fgui_cocos_demo_dust 个人demo可能会更新其他代码&#xff0c;还请读者阅读本文内容&#xff0c;自行理解并实现。 官…

模版(初级)

一.泛型编程 当我们要写一个交换函数时&#xff0c;面对不同的类型&#xff0c;我们可能就需要向如下这么写&#xff1a; void Swap(int& left, int& right) {int temp left;left right;right temp; }void Swap(double& left, double& right) {double tem…

【linux】常见指令 -通配符,数据管道,重定向,压缩打包...

目录 前言 基本指令 ls命令 常见选项 ​编辑 pwd命令 cd 指令 常见选项 touch指令 mkdir指令 常见选项 rm 指令 常见选项 man指令 cp指令 常用选项&#xff1a; mv指令 常用选项 nano指令 如何写入且执行文件&#xff1f; cat指令 常用选项 more指令…

RPA超级自动化、AIGC大模型、低代码、流程挖掘四大热门峰会火热报名中!

由企智未来科技&#xff08;RPA中国、LowCode低码时代、AIGC开放社区&#xff09;主办的第四届「ISIG中国产业智能大会」将于2024年3月16日在上海召开&#xff0c;本届主题为“与科技共赢&#xff0c;与产业共进”。在此次大会中&#xff0c;我们将设立RPA超自动化、低代码/零代…

【零代码研发】OpenCV实验大师工作流引擎C++ SDK演示

学习《OpenCV应用开发&#xff1a;入门、进阶与工程化实践》一书 做真正的OpenCV开发者&#xff0c;从入门到入职&#xff0c;一步到位&#xff01; OpenCV开发痛点 传统图像算法开发最好的开源解决方案是OpenCV视觉库&#xff0c;但是OpenCV中收录了2000的传统算法&#xf…

鸿蒙 渲染控制

前提&#xff1a;基于官网3.1/4.0文档。参考官网文档 基于Android开发体系来进行比较和思考。&#xff08;或有偏颇&#xff0c;自行斟酌&#xff09; 1.概念 ArkUI通过自定义组件的build()函数和builder装饰器中的声明式UI描述语句构建相应的UI。在声明式描述语句中开发者除了…

Linux笔记--硬链接与软链接

一、硬链接 1.inode和block 文件包含两部分数据&#xff1a;文件属性和实际内容&#xff0c;属性放在inode中&#xff0c;实际内容放在data block中。还有个超级区块&#xff08;superblock&#xff09;记录整个文件系统的整体信息&#xff0c;包括inode和block的总量&#x…

基于huggingface加载openai/clip-vit-large-patch14-336视觉模型demo

文章目录 引言一、模型加载二、huggingface梯度更新使用三、图像处理四、模型推理五、整体代码总结 引言 本文介绍如何使用huggingface加载视觉模型openai/clip-vit-large-patch14-336&#xff0c;我之所以记录此方法源于现有大模型基本采用huggingface库来加载视觉模型和大语…

【办公类-22-10】周计划系列(5-2)“周计划-02源文件docx读取5天“ (2024年调整版本)

背景需求 承接上文&#xff0c;继续制作周计划 【办公类-22-09】周计划系列&#xff08;5-1&#xff09;“周计划-01源文件统一名称“ &#xff08;2024年调整版本&#xff09;-CSDN博客文章浏览阅读76次。【办公类-22-09】周计划系列&#xff08;5-1&#xff09;“周计划-01…

LabVIEW燃料电池船舶电力推进监控系统

LabVIEW燃料电池船舶电力推进监控系统 随着全球经济一体化的推进&#xff0c;航运业的发展显得尤为重要&#xff0c;大约80%的世界贸易依靠海上运输实现。传统的船舶推进系统主要依赖于柴油机&#xff0c;这不仅耗能高&#xff0c;而且排放严重&#xff0c;对资源和环境的影响…

2.25 day5 QT

闹钟 .h代码 #ifndef WIDGET_H #define WIDGET_H#include <QWidget> #include <QTimerEvent> #include <QTime> #include <QTextToSpeech>QT_BEGIN_NAMESPACE namespace Ui { class Widget; } QT_END_NAMESPACEclass Widget : public QWidget {Q_OBJ…

【Linux操作系统】死锁 | 预防、避免死锁

创作不易&#xff0c;本篇文章如果帮助到了你&#xff0c;还请点赞 关注支持一下♡>&#x16966;<)!! 主页专栏有更多知识&#xff0c;如有疑问欢迎大家指正讨论&#xff0c;共同进步&#xff01; &#x1f525;Linux系列专栏&#xff1a;Linux基础 &#x1f525; 给大家…

Codeforces Round 881 (Div. 3) F2. Omsk Metro (hard version)(倍增+最大子段和)

原题链接&#xff1a;F2. Omsk Metro (hard version) 题目大意&#xff1a; 最初开始时&#xff0c;你有一个根节点 1 1 1 且权值为 1 1 1 。 接下来会有 n n n 个操作&#xff0c;每次操作按照如下格式给出&#xff1a; 设操作开始前节点总数为 c n t cnt cnt&#xff1…