题目描述

C小加有一些木棒,它们的长度和质量都已经知道,需要一个机器处理这些木棒,机器开启的时候需要耗费一个单位的时间,如果第i+1个木棒的重量和长度都大于等于第i个处理的木棒,那么将不会耗费时间,否则需要消耗一个单位的时间。因为急着去约会,C小加想在最短的时间内把木棒处理完,你能告诉他应该怎样做吗?

输入

第一行是一个整数T(1<T<1500),表示输入数据一共有T组。
每组测试数据的第一行是一个整数N(1<=N<=5000),表示有N个木棒。接下来的一行分别输入N个木棒的L,W(0 < L ,W <= 10000),用一个空格隔开,分别表示木棒的长度和质量。

输出

处理这些木棒的最短时间。

样例输入

3
5
4 9 5 2 2 1 3 5 1 4
3
2 2 1 1 2 2
3
1 3 2 2 3 1

样例输出

2
1
3
 1 #include<stdio.h>
2 #include<stdlib.h>
3 #include<string.h>
4
5 struct P {
6 int L;
7 int W;
8 int flag;
9 }P[5050];
10
11 int cmp(const void *a, const void *b) {
12 struct P *c = (struct P *)a;
13 struct P *d = (struct P *)b;
14 if(c->L != d->L){
15 return c->L - d->L;
16 }
17 return c->W- d->W;
18 }
19
20 int main( ) {
21 int T, N, i, j, now;
22 int ans;
23 scanf("%d",&T);
24 while(T--) {
25 scanf("%d",&N);
26 memset(P, 0, sizeof(P));
27 for(i = 0; i < N; i++) {
28 scanf("%d %d", &P[i].L, &P[i].W);
29 P[i].flag = 0;
30 }
31
32 qsort(P, N, sizeof(P[0]), cmp);
33 ans = 0;
34 for(i = now = 0;i < N;i++) {
35 if(P[i].flag == 0) {
36 now = i;
37 for(j = i + 1; j < N; j++) {
38 if(P[j].flag == 0 && P[j].L >= P[now].L && P[j].W >= P[now].W){
39 P[j].flag = 1;
40 now = j;
41 }
42 }
43 ans++;
44 }
45 }
46 printf("%d\n", ans);
47 }
48 return 0;
49 }

问题 G: 心急的C小加的更多相关文章

  1. ACM 心急的C小加

    心急的C小加 时间限制:1000 ms  |  内存限制:65535 KB 难度:4   描述 C小加有一些木棒,它们的长度和质量都已经知道,需要一个机器处理这些木棒,机器开启的时候需要耗费一个单位的 ...

  2. nyoj 236 心急的C小加

    心急的C小加 时间限制:1000 ms  |  内存限制:65535 KB 难度:4   描述 C小加有一些木棒,它们的长度和质量都已经知道,需要一个机器处理这些木棒,机器开启的时候需要耗费一个单位的 ...

  3. 心急的C小加(两种解法)

    心急的C小加 时间限制:1000 ms  |  内存限制:65535 KB 难度:4   描述 C小加有一些木棒,它们的长度和质量都已经知道,需要一个机器处理这些木棒,机器开启的时候需要耗费一个单位的 ...

  4. ny236 心急的C小加 hdoj1051 Wooden Sticks

    心急的C小加 时间限制:1000 ms  |  内存限制:65535 KB 难度:4 描述 C小加有一些木棒,它们的长度和质量都已经知道,需要一个机器处理这些木棒,机器开启的时候需要耗费一个单位的时间 ...

  5. 心急的C小加 贪心算法

    心急的C小加 时间限制:1000 ms  |  内存限制:65535 KB 难度:4   描述 C小加有一些木棒,它们的长度和质量都已经知道,需要一个机器处理这些木棒,机器开启的时候需要耗费一个单位的 ...

  6. NYOJ心急的C小加——贪心

    这个题会联想到拦截导弹的题目http://codevs.cn/problem/1044/ 首先用动态规划,利用Dilworth定理解题,然而超时了(╥╯^╰╥) 关于Dilworth定理,我的理解: ...

  7. 心急的C小加

    描述 C小加有一些木棒,它们的长度和质量都已经知道,需要一个机器处理这些木棒,机器开启的时候需要耗费一个单位的时间,如果 第i+1个木棒的重量和长度都大于等于第i个处理的木棒,那么将不会耗费时间,否则 ...

  8. nyoj 236心急的C小加 动态规划( java)

    sort函数用法: #include<algorithm> using namespace std; sort(a,a+len;cmp)    //a-->数组名,    len-- ...

  9. nyoj--236--心急的C小加(动态规划&&LIS)

    心急的C小加 时间限制:1000 ms  |  内存限制:65535 KB 难度:4 描述 C小加有一些木棒,它们的长度和质量都已经知道,需要一个机器处理这些木棒,机器开启的时候需要耗费一个单位的时间 ...

随机推荐

  1. Visual Studio 6.0 在 Windows 10 下崩溃的一种解决方法

    Visual Studio 6.0 下载地址: https://winworldpc.com/product/microsoft-visual-stu/60 安装步骤: https://www.cod ...

  2. 实验1:SDN拓扑实践

    作业链接:实验1:SDN拓扑实践 一.实验目的 能够使用源码安装Mininet: 能够使用Mininet的可视化工具生成拓扑: 能够使用Mininet的命令行生成特定拓扑: 能够使用Mininet交互 ...

  3. 初探计算机网络之HTTPS请求

    ​ HTTPS自诞生以来,我们总是对它充满着很多的疑问,HTTPS到底是啥?HTTPS多出来的S指的是什么?HTTPS安全可靠吗?访问一个HTTPS的网站的流程等等,带着这些疑问,我们一起来揭开HTT ...

  4. Scala trait特质 深入理解

    Scala trait特质 深入理解 初探Scala 特质trait 在Scala中,trait(特质)关键字有着举足轻重的作用.就像在Java中一样,我们只能在Scala中通过extends进行单一 ...

  5. Unity——资源文件夹介绍

    Unity资源文件夹介绍 1.编辑时 在Asset文件下存在Resources和SteamingAsset文件夹: Resources 只读不可修改,打包时直接写死,没有办法通过热更新替换资源: 可以 ...

  6. 找出某名珍贵药材的生长区域(ArcPy实现)

    一.背景 某种珍贵药材生长于山区,通过研究了解到这种药材生长具有严格的生长条件.为了能更好地保护该药材的生长环境,现在需要使用GIS空间分析方法,将药材适合生长区域找出来,以便为该物种保护提供依据. ...

  7. bzoj5210最大连通子块和 (动态dp+卡常好题)

    卡了一晚上,经历了被卡空间,被卡T,被卡数组等一堆惨惨的事情之后,终于在各位大爹的帮助下过了这个题qwqqq (全网都没有用矩阵转移的动态dp,让我很慌张) 首先,我们先考虑一个比较基础的\(dp\) ...

  8. 专业网络损伤仪HoloWAN meme只需5999元!

    在人们对互联网的依赖度越来越高的今天,人类社会逐步买入元宇宙时代,为了大大提高整个互联网的用户体验,HoloWAN团队推出每一个互联网应用开发团队都能用得起的专业网络损伤仪HoloWAN meme!售 ...

  9. HTML5元素背景知识

    目录 HTML5元素背景知识 语义与呈现分离 元素选用原则 少亦可为多 别误用元素 具体为佳,一以贯之 对用户不要想当然 元素说明体例 ol元素 元素速览 文档和元数据元素 文档和元数据元素 文本元素 ...

  10. C 标准库函数手册摘要

    <stdlib.h> int abs( int value ); long int labs( long int value ); 返回参数的绝对值 int rand( void ); v ...