C/C++游戏(game)
C/C++游戏(game)
题目描述
现在的游戏把趣味性和益智性结合得很好,最近你发现了一个很好玩的游戏。
电脑屏幕被平均分成N列,在屏幕的底端有一个M列宽的小船(M<N),在游戏过程中,玩家可以左右移动小船,但在移动过程中必须保证整个小船一直在屏幕内,不能移出屏幕。一开始,小船占据屏幕底端最左边M列。
有一些苹果从屏幕上方的某一列一直往下掉,直到到达屏幕的底端,在前一个苹果到达屏幕底端时,下一个苹果才开始往下掉。当苹果掉到底端时,如果小船正好占据着这一列,则认为该苹果被成功捡起。
游戏的目标是用最少的移动距离捡起所有掉下来的苹果。
输入
第一行输入两个空格隔开的整数N和M(1<=M<N<=10)。
第二行输入一个整数J(1<=J<=20)表示苹果的个数。
接下来J行每行一个整数,按照苹果下落顺序描述每个苹果的位置(列号)。
输出
输出要捡起所有苹果小船最少需要移动的距离。
样例输入
样例输入1
5 1
3
1
5
3
样例输入2
5 2
3
1
5
3
样例输出
样例输出1
6
样例输出2
4
这道题一看,有点意思。
先用用一个变量a存储每次苹果落下的列
然后用两个变量分别存储船的左边、右边。
接着每次输入a时判断苹果是否在小船范围内,若不在,就进行移动
而答案要求最短距离,所以只用船碰到边就行
最后输出答案
上C++代码:
#include<iostream>
using namespace std;
int n,m,a,ans;
int main()
{cin>>n>>m>>a;int l=1,r=m;for(int i=0;i<a;i++){int s;cin>>s;if(s>r){ans+=s-r;l+=(s-r);r=s;}else{if(s<l){ans+=l-s;r-=(l-s);l=s;}}}cout<<ans;return 0;
}
C风格:
#include<stdio.h>
int n,m,a,ans;
int main()
{scanf("%d%d%d",&n,&m,&a);int l=1,r=m;for(int i=0;i<a;i++){int s;scanf("%d",&s);if(s>r){ans+=s-r;l+=(s-r);r=s;}else{if(s<l){ans+=l-s;r-=(l-s);l=s;}}}printf("%d",ans);return 0;
}
C/C++游戏(game)相关推荐
- 伍六七带你学算法 进阶篇-生命游戏
有趣的算法题–生命游戏 难度-中等 根据 百度百科 ,生命游戏,简称为生命,是英国数学家约翰·何顿·康威在 1970 年发明的细胞自动机. 想要体验生命游戏的小伙伴可以到这里-->生命游戏 进入 ...
- 自制青蛙跳台阶小游戏~
青蛙跳台阶小游戏 1.概念(concept)文档 楔子(Setting):千百年来,人们在贬低别人时,常用井底之蛙来描述那个人,但这却让青蛙不开心了,于是青蛙决定跳出井底,为自己讨一个公道. 玩法(G ...
- 用Construct 2制作入门小游戏~
今天在软导课上了解到了Construct 2这个神器,本零基础菜鸟决定尝试做一个简单的小游戏(实际上是入门的教程啊= = 首先呢,肯定是到官网下载软件啊,点击我下载~ 等安装完毕后我便按照新手教程开始 ...
- Intel GPU实现游戏与数据中心
Intel GPU实现游戏与数据中心 在Intel Architecture Day上,Intel谈到了面向游戏玩家的Xe-HPG架构Alchemist GPU以及面向数据中心的Xe-HPC架构GPU ...
- 英特尔 i5-9400F,或将成为本年最高性价比的游戏处理器
英特尔 i5-9400F,或将成为本年最高性价比的游戏处理器 一直以来,每一代英特尔 i5 系列都是很多游戏玩家主要的选购对象,它和任何一款显卡似乎都能够很好的搭配起来.可凡事都有美中不足的地方,比如 ...
- 人脸照片自动生成游戏角色_ICCV2019论文解析
人脸照片自动生成游戏角色_ICCV2019论文解析 Face-to-Parameter Translation for Game Character Auto-Creation 论文链接: http: ...
- [FaceBook]测试、发布和分享小游戏
FaceBook小游戏 测试.发布和分享小游戏 对于小游戏,您现在可以十分轻松地在本地测试开发版本,自动完成发布流程,以及与团队分享编译版本.本文档会详细说明这些步骤. 通过本地服务器测试游戏 小游戏 ...
- OPPO小游戏vConsole开启方法
OPPO小游戏是不会报红色错误的,要开启vConsole,要在首场景脚本内onLoad里加上以下代码: qg.setEnableDebug({enableDebug: true, // true 为打 ...
- 如何把手变成手控_在这个模拟手的VR游戏里,你能体验到很多手控福利
原标题:在这个模拟手的VR游戏里,你能体验到很多手控福利 前排提示,部分图片可能导致掉San. 如今的电子游戏越来越真实,但始终存在一个局限,那就是玩家通常使用手柄.键鼠等外设来控制角色,没法与游戏实 ...
- Python爬取4399好wan的小游戏!
#coding=utf-8 #爬取4399所有好玩的游戏 import re import os import requests# 基础url host_url = 'http://www.4399. ...
最新文章
- PHP命令行代码更新不及时,PHP脚本从命令行工作,而不是从cron
- linux 软件安装 NOKEY问题
- oracle 带有变量的语句_Oracle 动态SQL语句(2)之含变量的WHERE语句与日期变量
- 国内开源社区巨作AspectCore-Framework入门
- Angular jasmine单元测试框架TestBed.createComponent的实现原理
- oracle报28003,【翻译自mos文章】运行utlpwdmg.sql之后报ORA-28003, ORA-20001, ORA-20002, ORA-20003, ORA-20004 错误...
- 玩转Spring——Spring IOC/DI
- 错误的日志可能会导致疯狂;好日志可能会成为魔杖
- lamp兄弟连java_LAMP兄弟连李明老师讲Linux视频教程下载
- 高项考试-必背的知识点
- A*算法求解迷宫问题(算法讲解与证明、python实现与可视化)
- 数据挖掘之OneR算法(原来数据挖掘如此简单!)
- vmware安装ubuntu Intel VT-x 处于禁用状态
- 在个人计算机系统中 常见外存储器有(),内蒙古事业单位专业知识计算机考试题库:计算机基础练习题(22)...
- python pip 的安装、更新、卸载、降级、和使用 pip 管理包
- java实现数据同步
- break 跳出两层甚至多层 for 循环
- python爬取微博评论(通过xpath解析的方式)
- 中国计算机软件行业分析2---国内企业分类
- php实现助记词转TRX,ETH 私钥和钱包地址