1008-I

来源:互联网 发布:跟淘宝一样的购物软件 编辑:程序博客网 时间:2024/06/03 12:29

      同1001-B题

    1.题目编号:1008-I

2.简单题意:输入n,代表会输入n组数据;再输入m,表示会有m组木板的长与重量的数据。输入一些数据,如果其中的一组数据长l重量w,在所有数据中有比l,w小于等于的数据,那么这组数据可以忽略不计,否则需要1分钟时间。

3.解题思路形成过程:题意说不出来,打个比方:输入1组数据,有4组长与重量的数据分别为,(4 ,9 )(5 ,2)(3 ,5)( 1, 4),用sort将它们从小到大排序,(1 4),( 3 5), (4 9),( 5 2) ,然后用最普通的方法一个一个判断,现将他们进行标记0,如果可以忽略就标记1,1 4),( 3 5), (4 9),为一组,时间增加1分钟,( 5 2)为一分钟,所以共2分钟。

4.感想:昨天这道题提交了5、6次,都是wa,那时觉得还很对,看了很多遍都觉得没问题,测试数据也过了,可是提交就是wa,当时真怀疑网站出了问题,一直看到晚上很晚,程序也没啥错,就不明白怎么就不对了,当我再去把题看一遍的时候我才知道,题意都看错了,虽然碰巧测试数据正确了,但是提交就不会过了,真心觉得英语是硬伤,看不懂题意真要命,看来要加强英语学习了。

     5.AC代码:

#include<iostream>#include <algorithm>using namespace std;struct jm{    int l,w,jih;}x[5005];bool cmp(jm a, jm b){   if(a.l < b.l)        return true ;    if(a.l == b.l&&a.w < b.w)        return true ;    else        return false;}int main(){    int n,m,all,a;    cin>>n;    for(int i=0;i<n;i++)    {        cin>>m;        all=0;        for(int j=0;j<m;j++)        {            cin>>x[j].l>>x[j].w;            x[j].jih=0;        }        sort(x,x+m,cmp);                    //  for(int j=0;j<m;j++)   cout<<x[j].l<<x[j].w<<" ";        for(int j=0;j<m;j++)        {            if(x[j].jih==0)            {                x[j].jih=1;                all++;                a=x[j].w;                for(int k=j+1;k<m;k++)                {                    if(x[k].w>=a&&x[k].jih==0)                       {                        x[k].jih=1;                        a=x[k].w;                       }                }            }         }         cout<<all<<endl;     }      return 0;}

0 0