备考CSP-J—贪心

这篇具有很好参考价值的文章主要介绍了备考CSP-J—贪心。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

额……既然是备考,那么一定要动脑筋,一共5题,大家好好思考一下。

一:P1250 种树 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn)

二:P1020 [NOIP1999 提高组] 导弹拦截 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn) 

三:P1230 智力大冲浪 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn) 

四:P1095 [NOIP2007 普及组] 守望者的逃离 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn) 

五:

某天 KID 利用飞行器飞到了一个金银岛上,上面有许多珍贵的金属,KID 虽然更喜欢各种宝石的艺术品,可是也不拒绝这样珍贵的金属。但是他只带着一个口袋,口袋至多只能装重量为 w 的物品。岛上金属有 s 个种类, 每种金属重量不同,分别为 n1,n2,...,ns,同时每个种类的金属总的价值也不同,分别为 v1,v2,...,vs。KID 想一次带走价值尽可能多的金属,问他最多能带走价值多少的金属。注意到金属是可以被任意分割的,并且金属的价值和其重量成正比

思考一小时……

思路:贪心。要让树最少,就要让树种在区间的重叠部分。所以,将尾部从小到大排序;遍历每一个区间,用一个变量表示这个区间已经种了多少棵树,若未达到意见,则从后往前种。

#include <bits/stdc++.h>
using namespace std;
int n,m,ans;
struct tree{
	int x,y,t;
}s[509];
bool used[10000];
bool cmp(tree a,tree b){
	return a.y<b.y;
}
int main(){
	cin>>n>>m;
	for(int i=1;i<=m;i++){
		cin>>s[i].x>>s[i].y>>s[i].t;
	}
	sort(s+1,s+1+m,cmp);
	for(int i=1;i<=m;i++){
		int k=0;
		for(int j=s[i].x;j<=s[i].y;j++) if(used[j]) k++;
		if(k>=s[i].t) continue;
		for(int j=s[i].y;j>=s[i].x;j--){
			if(used[j]==0){
				k++;
				ans++;
				used[j]=1;
				if(k>=s[i].t) break;
			}
		}
	}
	cout<<ans<<endl;
	return 0;
}

思路:先挑扣款大的玩,如果时间被占用了,就只能扣钱了。

#include <bits/stdc++.h>
using namespace std;
int m,n,used[509],ans;
struct game{
	int t,w;
}s[509];
bool cmp(game a,game b){
	return a.w>b.w;
}
int main(){
	cin>>m>>n;
	for(int i=1;i<=n;i++) cin>>s[i].t;
	for(int i=1;i<=n;i++) cin>>s[i].w;
	ans=m;
	sort(s+1,s+1+n,cmp);
	for(int i=1;i<=n;i++){
		int time=s[i].t;
		while(time>0&&used[time]) time--;
		if(time>0) used[time]=true;
		else ans-=s[i].w;
	}
	cout<<ans<<endl;
	return 0;
}

思路:能闪烁就闪烁,魔法值不够就加。

#include <bits/stdc++.h>
using namespace std;
int main()
{
    int m,s,t,now=0;
    cin>>m>>s>>t;
    int s1=0,s2=0;
    for(int i=1;i<=t;i++)
    {
        s1+=17;
        if(m>=10) {s2+=60;m-=10;}
        else m+=4;
        if(s2>s1) s1=s2;
        if(s1>s){
            cout<<"Yes"<<endl<<i<<endl;
            return 0;
        }
    }
    cout<<"No"<<endl<<s1<<endl;
    return 0;
}

思路:算一算性价比文章来源地址https://www.toymoban.com/news/detail-824669.html

#include<bits/stdc++.h>
using namespace std;
struct gold{
    int n,v; double dj;
} a[109];
int k,s,w;double ans_v; 
int cmp(gold x,gold y) 
{ return x.dj>y.dj;}
int main()
{   cin>>k;
    while(k--)
    {
        cin>>w>>s;
        ans_v=0; 
        for(int i=1;i<=s;i++)
        {
            cin>>a[i].n>>a[i].v;
            a[i].dj=a[i].v*1.0/a[i].n;
        }
        sort(a+1,a+1+s,cmp);
        int j=1;
        while(w>0&&j<=s)
        {
            if(a[j].n<w) { ans_v+=a[j].v;w-=a[j].n;}
            else { ans_v+=w*a[j].dj;w=0;}
            j++;
        }
        printf("%.2f\n",ans_v);
     } 
    return 0;
 }

到了这里,关于备考CSP-J—贪心的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 数据可视化第二版-拓展-和鲸网约车分析一等奖作品

    本文是和鲸社区的一个数据分析竞赛,比赛链接如下:【2023春节限定】网约车运营分析 这是数据科学开源社区和鲸社区的春节传统节目,也是和鲸社区与接地气的陈老师联合举办的【商业分析训练营】系列第一期,旨在用真实的分析场景,带同学们利用春节假期体验真实的

    2024年02月06日
    浏览(46)
  • 代码实现stable-diffusion模型,你也用AI生成获得一等奖的艺术图

    Midjourney工具获奖图片 好吗,人工智能虽然已经涉及到人类的方方面面,但没有想到,AI 还能抢艺术家的饭碗,这不,一位小哥使用AI工具生成的艺术照片竟然获奖了,而且还是一等奖,且最近刚刚火起来的stable diffusion 更是让艺术家与AI发生了争执,到底AI是否抢了艺术家的饭

    2024年02月10日
    浏览(63)
  • 【一等奖方案】大规模金融图数据中异常风险行为模式挖掘赛题「NUFE」解题思路

    第十届CCF大数据与计算智能大赛(2022 CCF BDCI)已圆满结束, 大赛官方竞赛平台DataFountain (简称DF平台)正在陆续释出各赛题获奖队伍的方案思路,欢迎广大数据科学家交流讨论。 本方案为 【大规模金融图数据中异常风险行为模式挖掘】 赛题的 一等奖 获奖方案,赛题地址:

    2024年02月10日
    浏览(30)
  • 【数学建模】2019 年全国大学生数学建模竞赛C题全国一等奖获奖论文

    机场的出粗车问题 大多数乘客下飞机后要去市区(或周边)的目的地,出租车是主要的交通工具之一。国内多数机场都是将送客(出发)与接客(到达)通道分开的。送客到机场的出租车司机都将会面临两个选择: (A) 前往到达区排队等待载客返回市区。出租车必须到指定的

    2024年02月14日
    浏览(59)
  • 【计算机设计大赛】国赛一等奖项目分享——基于多端融合的化工安全生产监管可视化系统

    今年参加计算机设计大赛软件应用与开发获得了国赛一等奖。 参加了两届计算机设计大赛,个人感觉拿奖还是比较容易。目前了解的几个参赛项目获奖级别都比较高,但是感觉几个项目实际也都没有什么特别之处,使用的技术栈也都比较平常。最重要的是我自己的参赛项目的

    2024年02月13日
    浏览(28)
  • 【2022研电赛】商业计划书赛道上海市一等奖:基于多目标排序预测控制的SL-qZSI光伏储能系统

    本文为2022年第十七届中国研究生电子设计竞赛商业计划赛道上海赛区一等奖作品兼全国三等奖分享,参加极术社区的【有奖活动】分享2022研电赛作品扩大影响力,更有丰富电子礼品等你来领! 参赛单位:上海理工大学 参赛队伍:科研创新队 指导老师:罗韡 参赛队员:吕哲

    2024年02月09日
    浏览(44)
  • Mathorcup数学建模竞赛第六届-【妈妈杯】B题:车位分布的优化设计与评价(附一等奖获奖论文和matlab代码)

    随着现代社会经济的快速发展,房地产成为国家经济发展中重要的经济增长点之一。而小区内汽车停车位的分布对于小区居民的上下班出行影响很大。请建立数学模型,解决下列问题: 问题1 :分析评判小区汽车停车位分布是否合理的几个关键指标,建立评判车位分布合理的

    2024年02月10日
    浏览(31)
  • CSP-J/S复试高分秘诀经验分享

    这篇文章是今年3月份参加NOI Online测试之前和老码农一起整理的一份资料,分享给备战今年10月份复赛的OIer, 还有不到4个月,还有很多不会的知识点,没有退路,唯有努力坚持前行。 Step1:通读所有题目:确定大概算法、确定是否能打表或者暴力枚举 Step2:草稿纸:仔细审题

    2024年02月07日
    浏览(27)
  • [CSP-J 2022] 解密

    大家好,今天我来解题[CSP-J 2022] 解密 题目来源链接 题目描述 给定一个正整数 k k k ,有 k k k 次询问,每次给定三个正整数 n i , e i , d i n_i, e_i, d_i n i ​ , e i ​ , d i ​ ,求两个正整数 p i , q i p_i, q_i p i ​ , q i ​ ,使 n i = p i × q i n_i = p_i times q_i n i ​ = p i ​ × q i ​ 、 e

    2024年02月08日
    浏览(36)
  • 2023CSP-J题解

    烦死了,这次CSP考的真的垃圾,犯了好多低级错误。 小 Y 的桌子上放着 n n n 个苹果从左到右排成一列,编号为从 1 1 1 到 n n n 。 小苞是小 Y 的好朋友,每天她都会从中拿走一些苹果。 每天在拿的时候,小苞都是从左侧第 1 1 1 个苹果开始、每隔 2 2 2 个苹果拿走 1 1 1 个苹果。

    2024年02月08日
    浏览(41)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包