Hdoj—1789
//大意理解 先排序 最早交的里面选最大值 扫描完了加没写的 排序后 应该是早交的和扣分多的在前 用结构体吧
/*#include<stdio.h>
#include<stdio.h>
int cmp(void const* a,void const*b)
{
if(*(st*)a->t==*(st*)b->t)
return *(st*)b->kou-*(st*)b->kou;
else
return *(st*)a->t-*(st*)b->t;
}
typedef struct
{
int vis;
int t;
int kou;
}st s[10000];
int main()
{
return 0;
}*/ //理解完全错误啊这样选择完全得不到解
题意就是最大的最迟做 做不了就被扣分。。 AC代码如下:
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
struct st
{
int time;;
int score; }a[];
int cam(const void *x,const void *y)
{
struct st p = *((struct st *)x);
struct st q = *((struct st *)y); return q.score-p.score; }
int main()
{
int t;
scanf("%d",&t);
while(t--)
{
int n, vis[]; scanf("%d",&n);
int i;
for(i=;i<=n;i++)
{
scanf("%d",&a[i].time);
}
for(i=;i<=n;i++)
{
scanf("%d",&a[i].score);
}
for(i=;i<=n;i++)
//printf("%d %d\n",a[i].time,a[i].score);
qsort(&a[],n,sizeof(a[]),cam);
int count = ;
int day=;
int j;
memset(vis,,sizeof(vis));
for(i=;i<=n;i++)
{ for(j=a[i].time;j>=;j--)
{ if(!vis[j])
{ vis[j]=;
break;
}
}
if(j<=)
count+=a[i].score;
}
printf("%d\n",count); }
return ;
}
感觉和网上搜的如出一辙。。。
#include<stdio.h>
#include<stdlib.h>
typedef struct
{
//int vis;
int t;
int kou; }st;
st s[];
int vis[];
int cmp(void const* a,void const*b)
{
return ((st*)b)->kou-((st*)a)->kou;
} int main()
{
int max_t,i,ci,c;
scanf("%d",&ci);
while(ci--){
int sum=,j;
scanf("%d",&c);
max_t=-;
for(i=;i<c;i++)
{
scanf("%d",&s[i].t);
max_t=max_t>s[i].t?max_t:s[i].t;
}
for(i=;i<=max_t;i++)vis[i]=;
for(i=;i<c;i++)
{
scanf("%d",&s[i].kou);
}
qsort(s,c,sizeof(s[]),cmp);
for(i=;i<c;i++)
{
for(j=s[i].t;j>;j--)
{
if(!vis[j])
{
vis[j]=!vis[j];
break;
}
}
if(j==)
{
sum+=s[i].kou;
}
}
printf("%d\n",sum);
}
return ;
Hdoj—1789的更多相关文章
- HDOJ.1789 Doing Homework again (贪心)
Doing Homework again 点我挑战题目 题意分析 给出n组数据,每组数据中有每份作业的deadline和score,如果不能按期完成,则要扣相应score,求每组数据最少扣除的scor ...
- hdoj 1789 Doing Homework again
Doing Homework again Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Oth ...
- Hdoj 1789 Doing Homework again 题解
Problem Description Ignatius has just come back school from the 30th ACM/ICPC. Now he has a lot of h ...
- HDOJ 1009. Fat Mouse' Trade 贪心 结构体排序
FatMouse' Trade Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) ...
- HDOJ 2317. Nasty Hacks 模拟水题
Nasty Hacks Time Limit: 3000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Tota ...
- HDOJ 1326. Box of Bricks 纯水题
Box of Bricks Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) To ...
- HDOJ 1004 Let the Balloon Rise
Problem Description Contest time again! How excited it is to see balloons floating around. But to te ...
- hdoj 1385Minimum Transport Cost
卧槽....最近刷的cf上有最短路,本来想拿这题复习一下.... 题意就是在输出最短路的情况下,经过每个节点会增加税收,另外要字典序输出,注意a到b和b到a的权值不同 然后就是处理字典序的问题,当松弛 ...
- HDOJ(2056)&HDOJ(1086)
Rectangles HDOJ(2056) http://acm.hdu.edu.cn/showproblem.php?pid=2056 题目描述:给2条线段,分别构成2个矩形,求2个矩形相交面 ...
随机推荐
- HDU5880【AC自动机】
题意: 给出n个字符串,再给出一个字符串,把之前出现过的字符串全部变成* 思路: AC自动机,Trie树上存的值是一个字符串的长度,也就是往前的长度,然后倒着处理一遍. 感想: 第三题AC自动机,本来 ...
- 51nod 1013【快速幂+逆元】
等比式子: Sn=(a1-an*q)/(1-q) n很大,搞一发快速幂,除法不适用于取膜,逆元一下(利用费马小定理) 假如p是质数,且gcd(a,p)=1,那么 a^(p-1)≡1(mod p).刚好 ...
- 嵌入式C语言模块编写
C 语言源文件 *.c 理想的模块化应该可以看成是一个黑盒子.即我们只关心模块提供的功能,而不管模块内部的实现细节.在大规模程序开发中,一个程序由很多个模块组成,这些模块的编写任务被分配到不同的人,编 ...
- C# 对DataTable中按条件进行筛选和更新。
当我们频繁的对数据库进行操作时,可能造成CPU使用率过高,这时我们可以先将数据表读取到DataTable,然后在必要的时候再更新到数据库中. 以下是DataTable中对数据的选择和更新操作.采用Da ...
- python使用rabbitmq实现简单的消息转发
准备: 1.下载elang语言的支持环境http://www.erlang.org/download.html (rabbitmq使用它开发的) 2.下载rabbitmq软件http://www.ra ...
- [题解]区间dp_luogu_P3147 262144
小数据版本P3146,可以区间dp, 性质:对于一个区间如果能合并成一个数,那么这个数是确定的 理解:把每个数看做 2^x 的形式,那么如果合并:2^x + 2^x =2^(x+1) 所以 f [ i ...
- Zynq7000开发系列-4(新:Xilinx交叉编译环境搭建)
一.前言 本来上一篇文章已经讲了Xilinx交叉编译环境的搭建,但是我在后续的使用中发现:使用2011年版本的交叉编译链编译OpenCV 3.1.0时出现错误: 网络搜索一番,查明是交叉编译链的问题 ...
- Linux 安装gcc4.8版本
1.下载安装包 http://ftp.tsukuba.wide.ad.jp/software/gcc/releases/gcc-4.8.1/ 2.解压 .tar.gz 3.下载编译所需的依赖包 cd ...
- 详解ASP.NET缓存机制
文中对ASP.NET的缓存机制进行了简述,ASP.NET中的缓存极大的简化了开发人员的使用,如果使用得当,程序性能会有客观的提升.缓存是在内存存储数据的一项技术,也是ASP.NET中提供的重要特性之一 ...
- DataGridView使用技巧(七、设定列宽和行高自动调整)----.NET
DataGridView使用技巧(七.设定列宽和行高自动调整)----.NET 1) 设定行高和列宽自动调整 [VB.NET]' 设定包括Header和所有单元格的列宽自动调整DataGridView ...