zoukankan      html  css  js  c++  java
  • CSP2019 J组(入门级)第二轮认证题解

    2019年一等奖浙江分数线为265分,二等奖分数线为100分,三等奖分数线为70分。
    当年附中情况,wm为245,dyc为155,zxy为110,zzx为105,pz为100。
    luogu对应题目 T1 数字游戏T2 公交换乘T3 纪念品T4 加工领奖 ,可以到luogu上查看更多题解。

    T1 数字游戏 字符串

    简单字符串,然后依次检查累加即可。

    T2 公交换乘 模拟、队列

    不少同学没看到免费搭乘一次票价不超过地铁票价的公交车,导致0分。
    45分的代码

    #include<bits/stdc++.h>
    using namespace std;
    struct T{int lei,money,time;}a[100005];
    struct T1{int money,ff=0,time;}b[100005];
    int main()
    {
        freopen("transfer.in","r",stdin);
        freopen("transfer.out","w",stdout);
        int n,tot=0,left=0,sum=0;
        cin>>n;
        for(int i=0;i<n;i++)cin>>a[i].lei>>a[i].money>>a[i].time;
        for(int i=0;i<n;i++)
        {
        	if(a[i].lei==0)
        	{
        		sum+=a[i].money;
    			b[tot].money=a[i].money;
    			b[tot++].time=a[i].time+45;
    		}
    		else
    		{
    			int f=0;
    			for(int j=0;j<tot;j++)
    			{
    				if(b[j].time>=a[i].time&&b[j].money>=a[i].money&&b[j].ff==0)
    				{
    					f=1;
    					b[j].ff=1;
    					break;
    				}
    			}
    			if(f==0)sum+=a[i].money;
    		}
    	}
    	cout<<sum<<"
    ";
        return 0;
    }
    

    用一个数组来装所有的收集到的赠票。每当坐地铁的时候,就直接花钱,然后获得一张赠票,放到数组里面。每当坐公交的时候,看看数组里面有没有时间合适,价格小于现在公交票价的赠票,并且没用过的赠票,直接用时间最早的那一张就可以了。而且45分钟后就过期了,可以用一个队列记录下这张票,这个题卡常,可以直接用数组模拟队列

    T3 纪念品 背包

    这个题有点难,将 每件纪念品的价格增量 作为其价值,每件纪念品在第一天购入的价格 作为其质量, M 作为背包容量,这个问题就转化为了一个完全背包问题。恭喜陈瀚东做对了

    T4 加工领奖 广搜、最短路

    相对来说,T4是比T3简单的。求出1到各个点的奇偶最少步数 即可。不过要使用vector代替邻接数组存储。本题杨添盛获得了满分。
    若存在3->4->5->6->7->1,长度为5,那么比如重复经过点5就是7了,3->4->5->6->5->6->7->1。一条边想走几次就走几次,那么存在+2,+4,...,+2n,同奇偶。长度为6的存在吗?不确定,所以奇偶必须分开求解,最终判定条件为奇偶相同且大于等于最少步数

    大佬您太强了,还请多多指教哎
  • 相关阅读:
    EditorWindow 和MenuItem
    PropertyDrawer 自定义属性绘图
    NGUI3.5系列教程之 一些小功能的实现
    NGUI3.5系列教程之 UILabel
    关于Resources.LoadAssetAtPath
    C#调用Python 脚本语言
    unity项目实现“再按一次退出程序”提示功能
    在Visual Studio 2010 中创建类库(dll)
    Unity 优化
    JAVA package-info文件【转】
  • 原文地址:https://www.cnblogs.com/BobHuang/p/15359271.html
Copyright © 2011-2022 走看看