ZOJ 2836 容斥原理

我的第一道容斥原理题


如果是偶数个。。。减去m除公倍数,如果是奇数个则相加

#include
#include
#include
#include
using namespace std;
int a[11];
int p[11];
int gcd(int a,int b)
{
    int c,d;
    c=max(a,b);
    d=min(a,b);
    while(d!=0)
    {
        int t;
        t=d;
        d=c%d;
        c=t;
    }
    return c;
}
int lcm(int a,int b)
{
    int r;
    int h;

    h=gcd(a,b);

    r=a*b/h;
   // printf("%d\n",r);
    return r;
}
int main()
{
    int n,m;
    while(scanf("%d %d",&n,&m)!=EOF)
    {
        int ans=0;


            for(int i=0;i1)
            {

                p[i]=0;
                p[++i]++;
            }

         }while(p[n]==0);
         printf("%d\n",ans);
    }
    return 0;
}


你可能感兴趣的:(ACM)