——————————————————————————————————1203————————————————————————————————

#include<stdio.h>
#include<string.h>
double max(double x,double y);
int main()
{
    int d,v,n,i,c[11111];
    double w[11111],f[11111];
    while(scanf("%d%d",&v,&n)!=EOF)
    {
        for(i=0;i<=v;i++)
            f[i]=1;
        if(v==0&&n==0)//题目要求
            break;
        for(i=0;i<n;i++)
        {
            scanf("%d%lf",&c[i],&w[i]);//输入花费,和收到offer的概率。
        }
        d=v;//如果会用指针的话,应该会方便很多。
        for(i=0;i<n;i++)    //OI背包公式。
        {
            for(v=d;v>=0;v--)
            {
                if(v-c[i]<0)
                    break;
                f[v]=max(f[v],f[v-c[i]]*(1-w[i]));//所有的值已经初始化为零
            }
        }
        printf("%.1lf%%\n",(1-f[d])*100);
    }
}
double max(double x,double y)
{
    if(x>y)
        return y;
    else
        return x;
}

反映出来的问题主要有

1:设置变量的时候没有从开始就严格按照题目设置,导致输入输出不配套出错。2:输出的时候格式出错,太蠢

时间: 2024-10-12 05:50:15

——————————————————————————————————1203————————————————————————————————的相关文章

TLS 协议所定义的严重错误代码是 10。Windows SChannel 错误状态是 1203

windows 2012 操作系统下面报36888/36887. 生成了一个严重警告并将其发送到远程终结点.这会导致连接终止.TLS 协议所定义的严重错误代码是 10.Windows SChannel 错误状态是 1203. 从远程终点接收到一个严重警告.TLS 协议所定义的严重警告代码为 48. 其实schannel的事件录入是分成4个等级的: Logging options The default value for Schannel event logging is 0×0000 in W

TOJ 1203: Number Sequence

1203: Number Sequence Time Limit(Common/Java):1000MS/10000MS     Memory Limit:65536KByte Total Submit: 957            Accepted:208 Description A number sequence is defined as follows: f(1) = 1, f(2) = 1, f(n) = (A * f(n - 1) + B * f(n - 2)) mod 7. Gi

hzau 1203 One Stroke

1203: One Stroke Time Limit: 2 Sec  Memory Limit: 1280 MBSubmit: 264  Solved: 56[Submit][Status][Web Board] Description There is a complete binary tree which includes n nodes. Each node on the tree has a weight w, each edge on the tree is directed fr

ACdream 1203 - KIDx&#39;s Triangle(解题报告)

KIDx's Triangle Time Limit: 2000/1000MS (Java/Others) Memory Limit: 128000/64000KB (Java/Others) Submit Statistic Next Problem Problem Description One day, KIDx solved a math problem for middle students in seconds! And than he created this problem. N

hdoj 1203 I NEED A OFFER! 【另类01背包】【概率背包】

题意:... 策略:动态规划. 因为是求至少能得到一个offer的概率,那我们可以反着求,求得不到一个offer的概率,最后用1减去就好了. 代码: #include<string.h> #include<stdio.h> double dp[10010]; struct node{ int a; double b; }s[10010]; int main() { int n, m, i, j; while(scanf("%d%d", &n, &

杭电 1203 I NEED A OFFER!(01背包)

http://acm.hdu.edu.cn/showproblem.php?pid=1203 I NEED A OFFER! Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) Total Submission(s): 15759    Accepted Submission(s): 6259 Problem Description Speakless很早就想出国,现在他已经考完了

zoj 1203 Swordfish

链接:zoj 1203 题意:输入n个城市的坐标,输出使n个城市连通的最短路线的长度 分析:通过坐标可以将两两之间的长度即权值算出,再用最小生成树的算法 不过这个题要注意输出时的格式问题,两组数据间要空一行 #include<cstdio> #include<cmath> #include<algorithm> using namespace std; int f[110],n,m; struct stu { int a,b; double c; }t[5000]; i

九度 1203

#include <cstdio> #include <iostream> using namespace std; #ifdef ONLINE_JUDGE #define FINPUT(file) 0 #define FOUTPUT(file) 0 #else #define FINPUT(file) freopen(file,"r",stdin) #define FOUTPUT(file) freopen(file,"w",stdout)

HZAU 1203 One Stroke(倍增)

题目链接:http://acm.hzau.edu.cn/problem.php?id=1203 [题意]给你一颗完全二叉树每个节点都有一个权值,然后要你从上往下找一条链,值得链上权值的和<K,且节点数最大. [分析]有两种做法:一种是在树上双指针,另一种是先求一下前缀和,当到i节点时前缀和<K,更新ans,当前缀和>K,倍增向上找 使得前缀和<K的节点,更新ans. #include <bits/stdc++.h> #define inf 100000000 #defi

URAL 1203 Scientific Conference(贪心 || DP)

Scientific Conference 之前一直在刷计算几何,邀请赛连计算几何的毛都买见着,暑假这一段时间就做多校,补多校的题目,刷一下一直薄弱的DP.多校如果有计算几何一定要干掉-.- 题意:给你N个报告会的开始时间跟结束时间,问你做多可以听几场报告会.要求报告会之间至少间隔为1. 思路:其实是个活动安排问题,可以用贪心也可以用DP,贪心写起来会比较简单一些,因为练习DP,所以又用DP写了一遍. 贪心的话就是一个很简单的活动选择问题,从结束时间入手,找每次的最优选择. 1 struct n