1 条题解
-
0
自动搬运
来自洛谷,原作者为

做梦想Peach
**搬运于
2025-08-24 21:40:32,当前版本为作者最后更新于2019-11-10 16:24:51,作者可能在搬运后再次修改,您可在原文处查看最新版自动搬运只会搬运当前题目点赞数最高的题解,您可前往洛谷题解查看更多
以下是正文
这题一看就是标准的贪心!!!将恶龙头的大小与骑士可以杀死的头的大小排序,然后一通乱搞
注意:you died!要感叹号,本人在此卡了半天。。。#include <stdio.h> #include <algorithm>//sort头 using namespace std; inline int read () {//快读 register int k=0; register char c=getchar(); while (c<'0'||c>'9') c=getchar(); while (c>='0'&&c<='9') {k=k*10+c-'0';c=getchar();} return k;//返回读入的值 } int main () { register int qs[20010],el[20010],m,n,i,ans=0; n=read(); m=read(); for (i=1;i<=n;i++) el[i]=read();//读入,不必多说 for (i=1;i<=m;i++) qs[i]=read(); sort (el+1,el+1+n);//排序 sort (qs+1,qs+1+m);//排序 if (n>m) {//如果恶龙数大于骑士的数量,则输出you died! printf ("you died!"); return 0; } int j=1; for (i=1;i<=n;i++) {//枚举答案 while (el[i]>qs[j]) j++;//找到最小一个大于该头的骑士 ans+=qs[j];//累加答案 if (j>m) break; j++; } if (i-1!=n) printf ("you died!");//输出答案 else printf ("%d\n",ans); return 0;//好轻松的呢!!! }谢谢观看,看我这辛苦,总得给个赞再走吧-_-
- 1
信息
- ID
- 1732
- 时间
- 1000ms
- 内存
- 125MiB
- 难度
- 2
- 标签
- 递交数
- 0
- 已通过
- 0
- 上传者