记录编号 413137 评测结果 AAAAA
题目名称 木棍 最终得分 100
用户昵称 GravatarHallmeow 是否通过 通过
代码语言 C++ 运行时间 0.015 s
提交时间 2017-06-10 21:40:07 内存使用 0.39 MiB
显示代码纯文本
#include<iostream>
#include<cstdio>
#include<cstring>
#include<algorithm>
using namespace std;
#define pos(i,a,b) for(int i=(a);i<=(b);i++)
struct haha
{
       int l,w;
}stick[6000];
int ans;
bool cmp(const haha &a,const haha &b)
{
     if(a.l!=b.l)
       return a.l<b.l;
     else
       return a.w<b.w;
}
int ll,ww;
int n;
int flag[6000];
inline int check()
{
    pos(i,1,n)
      if(flag[i]==0)
        return 0;
    return 1;
}
inline int read()
{
    int su=0;
    char ch=getchar();
    while(ch<'0'||ch>'9')
       ch=getchar();
    while(ch<='9'&&ch>='0')
    {
                           su=su*10+ch-'0';
                           ch=getchar();
    }
          
    return su;
}
inline void work()
{
    while(1)
    {
       ll=ww=0;
       if(check())
         break;
       pos(i,1,n)
       {
          //cout<<flag[i]<<endl;
          if(flag[i]==0)
          {
            if(stick[i].l>=ll&&stick[i].w>=ww)
            {
              flag[i]=1;
              ll=stick[i].l;ww=stick[i].w;
            }
            
          }
       }
       ans++;
    }
}
int main()
{
    freopen("wooden.in","r",stdin);
    freopen("wooden.out","w",stdout); 
    n=read();
    pos(i,1,n)
    {
       stick[i].l=read();
       stick[i].w=read();
    }
    sort(stick+1,stick+n+1,cmp);
    work();
    cout<<ans;
    //while(1);
    return 0;
}