codeforces 1016A Death Note

题目链接:codeforces.com/contest/1016/problem/A

题意:给你两个数字n,m,其中n是接下去要输入数字的个数,m是区间长度。输入的n个数字如果能够到区间长度的倍数就输出并清零,否则一直累加。

题目思路:刚开始我开了两个数组累加,后面发现不需要这么复杂。要记得把算出的倍数减掉。

#include<iostream>
#include<cstdio>
#include<cstring>
#include<ctime>
#include<cstdlib>
#include<algorithm>
#include<cmath>
#include<string>
#include<queue>
#include<vector>
#include<stack>
#include<list>
using namespace std;
#define PI 3.1415927
int a[200010];
int main()
{
	int n,m;
	cin>>n>>m;
	int sum=0;
	for(int i=1;i<=n;i++)
	{
		cin>>a[i];
	}
	for(int i=1;i<=n;i++)
	{
		sum+=a[i];
		int t=sum/m;
		cout<<t<<" ";
		sum-=t*m;
	}
	return 0;
 } 

猜你喜欢

转载自blog.csdn.net/okimaru/article/details/81412660