zoukankan      html  css  js  c++  java
  • hdu 4968 Improving the GPA dp

    【题意】:每个成绩范围对应一个绩点,给出平均分avg,课程数n,求能得到的平均绩点的最大值和最小值。

    【解法】:   d[i][j]表示总分为i 课程数为j时 可以得到的最大的总绩点。

                       状态转移为: d[i][j]=max(d[i][j],d[i-k][j-1]+d[k][1]);   (60<=k<=100&&i-k>=60*(j-1))

     1 #include<iostream>
     2 #include<cstdio>
     3 #include<map>
     4 #include<algorithm>
     5 #include<cstring>
     6 using namespace std;
     7 double temp[102];
     8 double d[1002][12];
     9 #define INF 9999999
    10 
    11 int main()
    12 {
    13 
    14     int n,m,sum,t;
    15     for(int i=60;i<=69;i++)
    16         temp[i]=2.0;
    17     for(int i=70;i<=74;i++)
    18         temp[i]=2.5;
    19     for(int i=75;i<=79;i++)
    20         temp[i]=3.0;
    21     for(int i=80;i<=84;i++)
    22         temp[i]=3.5;
    23     for(int i=85;i<=100;i++)
    24         temp[i]=4.0;
    25 
    26     scanf("%d",&t);
    27     while(t--)
    28     {
    29         scanf("%d%d",&m,&n);
    30         sum=m*n;
    31         for(int i=0;i<=sum;i++)
    32             for(int j=0;j<=n;j++)
    33                 d[i][j]=INF;
    34         for(int i=60;i<=100;i++)
    35             d[i][1]=temp[i];
    36 
    37         for(int j=2;j<=n;j++)
    38             for(int i=0;i<=sum;i++)
    39                 for(int k=60;k<=100&&(i-k>=60*(j-1));k++)
    40                      d[i][j]=min(d[i][j],d[i-k][j-1]+d[k][1]);
    41         printf("%.4lf ",d[sum][n]/n);
    42 
    43         for(int i=0;i<=sum;i++)
    44             for(int j=0;j<=n;j++)
    45                 d[i][j]=0;
    46 
    47         for(int i=60;i<=100;i++)
    48             d[i][1]=temp[i];
    49 
    50         for(int j=2;j<=n;j++)
    51             for(int i=0;i<=sum;i++)
    52                 for(int k=60;k<=100&&(i-k>=60*(j-1));k++)
    53                      d[i][j]=max(d[i][j],d[i-k][j-1]+d[k][1]);
    54         printf("%.4lf
    ",d[sum][n]/n);
    55 
    56     }
    57 
    58     return 0;
    59 }
  • 相关阅读:
    【H5】01 入门 & 概述
    【Mybatis + Spring】 Mybatis
    【Mybatis】Bonus01 笔记资料
    【Spring】06 Aop切面功能
    【Spring】05 注解开发
    【Spring】04 注解实现自动装配
    【Spring】03 XML配置
    【Spring】02 过程分析
    【Mybatis】11 注解的使用
    【Mybatis】10 实现分页 & 分页插件
  • 原文地址:https://www.cnblogs.com/assult/p/3925526.html
Copyright © 2011-2022 走看看