zoukankan      html  css  js  c++  java
  • loj515贪心只能过样例

    bitset练习题。。。

    位运算真的是玄学。。。

    一开始真的“只能过样例”

    后来发现把左移写成了小于号

    鬼知道我在想什么/手动微笑

    loj第一题

    #include<iostream>
    #include<cstdio>
    #include<cstdlib>
    #include<cmath>
    #include<cstring>
    #include<algorithm>
    #include<vector>
    #include<queue>
    #include<set>
    #include<map>
    #include<stack>
    #include<bitset>
    #define ll unsigned long long
    #define pi 3.14
    #define eps 1e-9
    #define inf 2147483233
    #define m(a) memset(a,0,sizeof(a))
    #define M(a) memset(a,127,sizeof(a))
    #define REP(i,m,n) for(int i=1;i<=n;i++)
    #define DWN(i,n,m) for(int i=n;i>=1;i++)
    #define lowbit(x) x&(-x)
    using namespace std;
    inline int read()
    {
        int x=0,f=1;
        char ch=getchar();
        while(!isdigit(ch)){if(ch=='-')f=-1;ch=getchar();}
        while(isdigit(ch)){x=10*x+ch-'0';ch=getchar();}
        return x*f;
    }
    inline void write(int x)
    {
        int num=0;
        char buf[15];
        while(x)buf[++num]=(x%10)+'0',x/=10;
        while(num)putchar(buf[num--]);
        putchar('
    ');
    }
    int n,l,r;
    bitset<1010101>bs[2];
    int main()
    {
        n=read();
        bs[0][0]=1;
        for(int i=1;i<=n;i++)
        {
            l=read(),r=read();
            for(int j=l;j<=r;j++) bs[i&1]|=(bs[!(i&1)]<<(j*j));
            bs[!(i&1)].reset();
        }
        write(bs[(n&1)].count());
        return 0;
    }
    View Code
  • 相关阅读:
    C语言-typedef和#define
    C语言-指针
    C语言-数据结构-结构体
    数据结构笔记
    树的存储结构
    树的基本知识
    关于矩阵
    LaTex
    札记-碎碎念
    一个大神的个人博客 博客桌面风格很棒 二次元
  • 原文地址:https://www.cnblogs.com/Kong-Ruo/p/7895973.html
Copyright © 2011-2022 走看看