https://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&category=24&page=show_problem&problem=2267

有一条n个头的恶龙,现在有m个骑士可以雇佣去杀死他,一个能力值为x的勇士可以砍掉直径不超过x的头,而且需要支付x个金币。如何雇佣才能砍掉所有的头且支付最少的金币,注意一个勇士只能砍一个头,也只能被雇佣一次。

输入包含多组数据,每组数据第一行为正整数n,m(1<=n,m<=20000),以下n行每行为一个整数,就是恶龙的头的直径,以下m行每行为一个整数,就是每个骑士的能力值。输入结束标志位m=n=0。

输出格式对于每组数据输出最少花费,如果无解,则输出"Loowater is doomed!"。

输入样例

2 3

5

4

7

8

4

2 1

5

5

10

0 0

这个题意思是挺好理解的,就是x>=n,而且x不能重复使用,本来我是按照习惯

for(int i=0;i<n;i++)
       {
           for(j=0;j<m;j++)
           {
               if(b[j]>=a[i])
               {
                   s=s+b[j];
                   break;
               }
           }
       }

好吧,后来又想x只能用一次啊,然后就改成j=i,但是结果还是不对,然后想数据,发现还是不行,就看了一下书,他是把j放在前面的,

然后就改成了这个

#include<iostream>
#include<algorithm>
using namespace std;
int main()
{
    int n,i,m,a[20000],b[20000];
    while(cin>>n>>m)
    {
        if(n==0&&m==0)
            break;
        int s=0;
        for(i=0;i<n;i++)
        {
            cin>>a[i];
        }
        for(int j=0;j<m;j++)
        {
            cin>>b[j];
        }
        sort(a,a+n);
        sort(b,b+m);
       for(int j=0;j<m;j++)
       {
           for(i=j;i<n;i++)
           {
               if(b[j]>=a[i])
               {
                   s=s+b[j];
                   break;
               }
           }
       }
        if(i<n||s==0)
        {
            cout<<"Loowater is doomed!"<<endl;
        }
        else
            cout<<s<<endl;
    }
    return 0;
}

最后判断输出什么是如果骑士的个数少于恶龙的头,那么无论怎么样都不行,如果s==0那也代表没办法

哎,好多天没打代码了,什么都忘了,今天下定决心好好好学。

勇者斗恶龙UVa11292 - Dragon of Loowater的更多相关文章

  1. uva11292 Dragon of Loowater

    水题,排序遍历即可 #include<iostream> #include<cstdio> #include<algorithm> using namespace ...

  2. uva11292 Dragon of Loowater(排序后贪心)

    #include<iostream> #include<cstdio> #include<cstdlib> #include<cstring> #inc ...

  3. UVa 11292 勇者斗恶龙(The Dragon of Loowater)

    首先先看一下这道题的英文原版... 好吧,没看懂... 大体意思就是: 有一条n个头的恶龙,现在有m个骑士可以雇佣去杀死他,一个能力值为x的勇士可以砍掉直径不超过x的头,而且需要支付x个金币.如何雇佣 ...

  4. uva-----11292 The Dragon of Loowater

    Problem C: The Dragon of Loowater Once upon a time, in the Kingdom of Loowater, a minor nuisance tur ...

  5. uva 11292 Dragon of Loowater (勇者斗恶龙)

    Problem C: The Dragon of Loowater Once upon a time, in the Kingdom of Loowater, a minor nuisance tur ...

  6. The Dragon of Loowater

      The Dragon of Loowater Once upon a time, in the Kingdom of Loowater, a minor nuisance turned into ...

  7. UVA它11292 - Dragon of Loowater

    Problem C: The Dragon of Loowater Once upon a time, in the Kingdom of Loowater, a minor nuisance tur ...

  8. UVA 11292 Dragon of Loowater(简单贪心)

    Problem C: The Dragon of Loowater Once upon a time, in the Kingdom of Loowater, a minor nuisance tur ...

  9. Dragon of Loowater

    option=com_onlinejudge&Itemid=8&page=show_problem&problem=2267" style="color:b ...

随机推荐

  1. PHP 使用 debug_print_backtrace() 或 debug_backtrace() 打印栈轨迹

    <?php /* 使用debug_print_backtrace() 或 debug_backtrace() 打印栈轨迹 */ function fun1() { print "Hel ...

  2. Maven环境搭建

    1,下载maven zip版   http://maven.apache.org/download.cgi 2,配置maven环境变量 (1) 新建MAVEN_HOME环境变量  E:\TOOLS\A ...

  3. tshark 抓包分析

    一,安装#yum install -y wireshark 二.具体使用案例 1.抓取500个包,提取访问的网址打印出来tshark -s 0 -i eth0 -n -f 'tcp dst port ...

  4. linux 压缩 解压zip 命令

    将当前目录下的所有文件和文件夹全部压缩成test.zip文件,-r表示递归压缩子目录下所有文件zip -r test.zip ./* 打包目录zip test2.zip test2/*解压test.z ...

  5. iphone状态栏高度?

      设备分辨率         状态栏高度           导航栏高度 标签栏高度 iPhone6 plus       1242×2208 px           60px           ...

  6. 用NotePad如何实现大小写转换

    1.小写转换大写  Ctrl + shift + U 2.大写转换小写  Ctrl + U

  7. LINQ教程

    在说LINQ之前必须先说说几个重要的C#语言特性 一:与LINQ有关的语言特性 1.隐式类型 (1)源起 在隐式类型出现之前, 我们在声明一个变量的时候, 总是要为一个变量指定他的类型 甚至在fore ...

  8. ORA-03113: end-of-file on communication channel

    导致的原因,可能是异常断电导致文件状态不一致. SQL> startupORACLE instance started. Total System Global Area 1653518336 ...

  9. 在Linux下禁用IPv6的方法小结

    在Linux下禁用IPv6的方法小结--http://www.jb51.net/LINUXjishu/335724.html 这篇文章主要介绍了在Linux下禁用IPv6的方法小结,禁用IPv6的操作 ...

  10. [CC]区域生长算法——点云分割

    基于CC写的插件,利用PCL中算法实现: void qLxPluginPCL::doRegionGrowing() { assert(m_app); if (!m_app) return; const ...