http://acm.hdu.edu.cn/showproblem.php?pid=1789

cmp函数:

先按扣分由多到少进行排序,然后如果遇到扣分一样的,则先做时间少的。

vis数组:

最要的事,放在它的截至日期那一天去做,然后,之后如果有相同的天数,则往前找是否有空余的天数,没有的话就把扣的分值加入sum

#include <iostream>
#include <cstdio>
#include <cstring>
#include <algorithm>
using namespace std;const int maxn = 1010;
int vis[maxn];typedef struct
{int day;int score;
}S;S s[maxn];bool cmp(S a,S b)
{if(a.score>b.score)return 1;else if(a.score==b.score){if(a.day<b.day)return 1;elsereturn 0;}elsereturn 0;
}int main ()
{int T,n,i,t,sum;scanf("%d",&T);while(T--){memset(vis,0,sizeof(vis));scanf("%d",&n);for(i=0;i<n;i++)scanf("%d",&s[i].day);for(i=0;i<n;i++)scanf("%d",&s[i].score);sort(s,s+n,cmp);sum=0;for(i=0;i<n;i++){t=s[i].day;while(t){if(!vis[t]){vis[t]=1;break;}elset--;if(t==0)sum+=s[i].score;}}printf("%d\n",sum);}return 0;
}

【ACM】杭电OJ 1789(Doing Homework again)相关推荐

  1. 杭电OJ——ACM 1009.FatMouse‘ Trade

    FatMouse'Trade 杭电OJ--ACM 1009.FatMouse' Trade链接入口 问题描述        肥老鼠换东西,m磅猫食,n间房子,每个房间有J[i]磅JavaBean,对应 ...

  2. 杭电OJ——ACM 1003.Max Sum

    Max Sum 杭电OJ--ACM 1003.Max Sum链接入口 问题描述 大意:        给定一个序列a[1],a[2],a[3]-a[n],你需要算出其子序列中的最大值.比如说:给你一个 ...

  3. 赛马网ACM试题(原杭电oj ACM)java版答案(1000,10001,1002)

    赛马网ACM试题(原杭电OJ ACM试题)答案(java版) Author : Zhang Hailong   Date   : 2015-09-17    HomePage : http://  E ...

  4. 【ACM】杭电OJ 2037

    题目链接:杭电OJ 2037 先把b[i]进行排序,然后,b[i]与a[i+1]进行比较. #include <iostream> #include <cstdio> #inc ...

  5. 【ACM】杭电OJ 2020(排序)

    题目链接:杭电OJ 2020 排序可以有冒泡排序,选择排序,或者直接调用函数. 下面是选择排序: #include <stdio.h> #include <math.h> in ...

  6. 【ACM】杭电OJ 2018

    题目链接:杭电OJ 2018 从n>4开始,每一年的牛的数量=前一年的牛的数量+三年前的牛的数量 问:为什么是三年前? 答:假设三年前有一头小牛出生,出生的那一年即为第一年,到了第四年,即三年后 ...

  7. 【ACM】杭电OJ 1005

     题目链接:杭电OJ 1005 超时代码如下(而且开辟的数组空间大小不够): #include <stdio.h> int m[100000]; int f(int n,int a,int ...

  8. 【ACM】杭电OJ 1004

     题目链接:杭电OJ 1004 运行环境:Dev-C++ 5.11 思路: 先把先把num数组全部赋值为1:第一个颜色单独输入,从第二个开始,需要与前面的进行比较,如果前面有相同的颜色,则在目前的nu ...

  9. 【ACM】杭电OJ 2012。

    题目链接:杭电OJ 2012 思路很简单,但是有一种高效算法显示编译错误,不知道为什么 运行环境:VS2017 AC代码: #include <stdio.h> #include < ...

最新文章

  1. EventBus设计与实现分析——订阅者的注册
  2. 在ATM取钱5000,查询余额却少了50000,怎么回事?
  3. 从字符串 const str = ‘qwbewrbbeqqbbbweebbbbqee‘;中能得到结果 [“b“, “bb“, “bbb“, “bbbb“] 以下错误语句是?
  4. 12c oracle 激活_Windows运维之Windows server 2016 安装及ORACLE 12C 安装
  5. Django配置数据库读写分离
  6. 【codevs1116】四色问题,深搜入门题目
  7. CENTOS 7.0 安装discuz ,搭 mysql +php+apache 环境
  8. 第三十五 ASP.NET和Web服务(二)
  9. 大数据如何推动医疗行业的发展
  10. CreateFile 错误码
  11. Sublime 高亮汇编asm文件
  12. 数学作图工具_分别用于教学、排版、科研的数学作图软件
  13. 下终南山过斛斯山人宿置酒
  14. .net linux 界面设计,.NET Core3.0开发Liunx桌面应用程序
  15. #649 (Div. 2)D. Ehab‘s Last Corollary
  16. php返回json数组前面出现乱码“锘縶”解决办法
  17. 运用Python抓取二手房价格与信息的两种常用方法
  18. 实例003:完全平方数 一个整数,它加上100后是一个完全平方数,再加上168又是一个完全平方数,请问该数是多少?
  19. Nmap Network Scanning扫描版
  20. 对ie浏览器版本识别的js代码

热门文章

  1. 新手参加java培训都学什么
  2. ueditor php 附件,ueditor单独调用上传附件和图片的功能
  3. HashMap和HashSet原理及底层实现
  4. SpringBoot注解大全 转
  5. PHP 获取数组最后一个值
  6. 用Thymeleaf在前台下拉列表取值
  7. [日常] Go语言圣经-函数递归习题
  8. cocostudio UI编辑器中UITextField输入框控件光标
  9. 检查网站是否可以正常访问
  10. iOS开源JSON解析库MJExtension