poj3370 Halloween treats
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
int a[100008];
int b[100008];
void out(int m,int n)
{
int i;
for(i=m;i<n;i++)
{
printf("%d ",i+1);
}
printf("%d\n",n+1);
}
int main()
{
int c,n;
while(scanf("%d %d",&c,&n),c||n)
{
int i;
for(i=0;i<n;i++)
{
scanf("%d",&a[i]);
}
for(i=0;i<c;i++)
{
b[i]=-1;
}
int sum=0;
bool flag=false;
for(i=0;i<n;i++)
{
sum=(sum+a[i])%c;
if(sum==0)
{
out(0,i);
flag=true;
}
else if(b[sum]!=-1)
{
out(b[sum]+1,i);
flag=true;
}
else
{
b[sum]=i;
}
if(flag==true)
{
break;
}
}
}
return 0;
}