zoukankan      html  css  js  c++  java
  • 江西财经大学第一届程序设计竞赛 G题小Q的口袋校园

    题目链接:https://www.nowcoder.com/acm/contest/115/G

    解题思路:题解就一份代码,贪心的思想。先按开始时间进行排序。

    然后不断贪心获得happy[ j ]的最大值。

    这题目贪心的话一定要排序。

     1 #include<iostream>
     2 #include<string>
     3 #include<algorithm>
     4 #include<string>
     5 #include<string.h>
     6 using namespace std;
     7 struct Node{
     8     int s,e,h,g;
     9 }num[205];
    10 bool cmp(Node a,Node b){
    11     return a.s<b.s;
    12 }
    13 int happy[30],grade[30];
    14 int main(){
    15     int T;
    16     cin>>T;
    17     while(T--){
    18         int n;
    19         cin>>n;
    20         for(int i=0;i<n;i++){
    21             cin>>num[i].s>>num[i].e>>num[i].h>>num[i].g;
    22         }
    23         sort(num,num+n,cmp);
    24         memset(happy,0,sizeof(happy));
    25         memset(grade,0,sizeof(grade));
    26         for(int i=0;i<n;i++){
    27             for(int j=num[i].e;j<=24;j++){
    28                 if(happy[j]<happy[num[i].s]+num[i].h){
    29                     happy[j]=happy[num[i].s]+num[i].h;
    30                     grade[j]=grade[num[i].s]+num[i].g;
    31                 }else if(happy[j]==happy[num[i].s]+num[i].h){
    32                     grade[j]=max(grade[j],grade[num[i].s]+num[i].g);
    33                 }
    34             }
    35         }
    36         cout<<happy[24]<<' '<<grade[24]<<endl;
    37     }
    38     return 0;
    39 }
  • 相关阅读:
    vue 交互 跨域获取数据
    计算属性computed缓存 与 methods 的思考
    _this 与 this
    python 占位符 %s Format
    odoo 中字段属性对象Field
    安装CentOS7.7图解
    docker的volumes
    Docker常用命令详解
    Ubuntu修改时区和更新时间
    SqlServer创建时间维度
  • 原文地址:https://www.cnblogs.com/ISGuXing/p/8907837.html
Copyright © 2011-2022 走看看