zoukankan      html  css  js  c++  java
  • poj 3370 Halloween treats

    //poj 3370 c个小孩 n户人家 n>=c 每个人家有一些糖果,找些人家糖果和是c的倍数 输出找到人家的编号 (从1开始计算)
    //鸽巢原理
    // n个数必定存在某段连续和是n的倍数
    // 累加求余可以看出这个
    #include <iostream> #include <stdio.h> #include <string.h> using namespace std; #define LL __int64 LL a[100010]; int h[100010]; int main() { int c,n; while(scanf("%d%d",&c,&n),c|n) { // printf("%lld ",c); // printf("%lld ",n); memset(h,0,sizeof(h)); int i,l,r; l=r=1; scanf("%I64d",&a[1]); h[a[1]%c]=1; for(i=2;i<=n;i++) { scanf("%I64d",&a[i]); // if(r>1) continue; a[i]+=a[i-1]; if(a[i]%c==0) { l=1; r=i; } else if(h[a[i]%c]) { l=h[a[i]%c]+1; r=i; } h[a[i]%c]=i; } // printf("%d %d ",l,r); for(i=l;i<r;i++) printf("%d ",i); printf("%d ",i); } return 0; }
  • 相关阅读:
    第三次jsp作业
    快速排列 使用链表
    Cross
    题目
    ranch
    robot
    Mold
    Mold2
    OX_pattern
    KSC sort
  • 原文地址:https://www.cnblogs.com/372465774y/p/3619550.html
Copyright © 2011-2022 走看看