Pagini recente » Cod sursa (job #3324616) | Cod sursa (job #3342313) | Cod sursa (job #3305607) | Cod sursa (job #3305609) | Cod sursa (job #3344000)
#include <iostream>
#include <fstream>
using namespace std;
int A,B,N,K, v[500001], s[500001], T=0;
ifstream f ("divk.in");
ofstream g ("divk.out");
void cit (int N,int v[500001])
{
int i;
for (i=1; i<=N; i++)
f>>v[i];
}
void sumaa (int N, int K, int v[500001], int s[500001])
{
int i;
s[1]=v[1];
for (i=2; i<=N; i++)
{
s[i]=s[i-1]+v[i];
if (s[i]%K==0)
{
s[i+1]=s[i]+v[i+1];
s[i]=0;
T++;
i++;
}
}
}
void prgr (int N, int K, int s[500001])
{
int i,j;
for (i=N; i>=1; i--)
for(j=i-1; j>=1; j--)
{
if ((s[i]-s[j])%K==0)
{
s[j]=0;
s[i]=0;
T++;
i--;
break;
}
}
}
int main()
{ f>>N>>K>>A>>B;
cit (N,v);
sumaa(N,K,v,s);
prgr (N,K,s);
g<<T;
int j;
for (j=1; j<=N; j++)
{
cout << s[j] << " ";
}
return 0;
}