问一道简单的C++跳格子问题系统为什么显示运行错误
  • 板块学术版
  • 楼主奔跑的小H
  • 当前回复8
  • 已保存回复8
  • 发布时间2021/9/5 16:07
  • 上次更新2023/11/4 07:38:47
查看原帖
问一道简单的C++跳格子问题系统为什么显示运行错误
555268
奔跑的小H楼主2021/9/5 16:07

问题描述 小 X 喜欢玩游戏。 这天,小 X 觉得传统的游戏都玩腻了,自己随手在草稿纸上画了一 行 N 个格子作为棋盘, 制定了如下规则:格子从左到右依次编号为 1 到 N,玩家初始位于格子 1,初始前进方向为 向右,游戏共进行 M 轮,第 i 轮玩家前进 Ai 格,若玩家到达格子 N 则改变前进方向为向左, 若玩家到达格子 1 则改变前进方向为向右。 小 X 想知道玩家最后会停在哪个格子,但这个游戏太漫长了,他已经玩得快睡着了,希望你帮帮他。 输入格式 第一行包含用一个空格隔开的两个整数 N,M。 接下来 M 行,第 i 行包含一个整数 Ai。 输出格式 第一行包含一个整数,表示玩家最后停留的格子编号。 样例输入 3 2 2 3 样例输出 2 样例说明 玩家的路线为 1->2->3->2->1->2。 数据范围 对于 30%的数据,N=2,M≤10,Ai=1。 对于 60%的数据,N≤1000,M≤1000,Ai≤1000。 对于 100%的数据,2≤N≤100000,1≤M≤100000,1≤Ai≤1000000000。

#include<iostream>
#include<cstdio>
using namespace std;
long long int a[11];
int main() {
	long long int n,m,k;
	long long int sum=0;
	cin>>n>>m;
	for(int i=1; i<=m; i++) {
		scanf("%lld",&a[i]);
		sum+=a[i];
	}
	if(sum/(n-1)%2!=0)
		k=n-sum%(n-1);
	else
		k=sum%(n-1)+1;
	cout<<k;
	return 0;
}
2021/9/5 16:07
加载中...