文章目录

  • 比赛分析
  • 题目分析
    • A题:Kick Start
    • B题:Infimum of Paths
    • C题:Mr. Panda and Typewriter
    • D题:Pulse Nova
    • E题 Non-Maximum Suppression
    • F题:Ferry
    • G题:Game on the Tree
    • H题 Mr. Panda and SAD
    • I题:Mr. Panda and Blocks
    • J题:Wire-compatible Protocol buffer
    • K题:Russian Dolls on the Christmas Tree
    • L题:Spiral Matrix

比赛分析

发现的经典的一句话:

三人同演一场戏,不知已是戏中人–来自知乎的某位博主

大佬的分析:一个链接通向知乎

本博主的分析:我们打的重现赛。这场比赛是4题从铁到金,换句话说只要5题稳拿金。可惜我们是铁锈。本场比赛的难易程度特别明显!不过能打final的队伍真的强。对于比赛题目而言,最离谱就是J题,六页模拟拿来放AK(对此我表示很赞)!但是能过的四个题里存在一道树上启发式合并……只能说现在的我们太菜了,这东西不会啊。总体看这场比赛题的目,难度还是不小的(因为我现在菜的很),不过感觉这套题挺好的(除了J)现在收拾它很费劲,以后就好了。

本场比赛题倒是读的差不多了,但没补几个。

题目分析

补题链接

A题:Kick Start

题型:模拟(属实是不知道这属于啥了)

题目大意:给出每年的几场比赛时间和今天的时间,输出下一场比赛是什么时候。

思路:筛选这写就行,注意“21st”、“22nd”等

#include <iostream>
#include <cstring>
#include <algorithm>
#include <map>
#include <set>
using namespace std;map<string, int> mouth;
map<int, string> mouth_tran;
map<string, int> day;
map<int ,string> day_tran;set<pair<int,int> >ans;void init()//打表无敌,<将月份,天数打表即可>
{mouth["Jan"] = 1; mouth_tran[1] = "Jan";...day["31st"] = 31; day_tran[31] = "31st";
}int main()
{init();int T;cin >> T;for(int Case = 1; Case <= T; Case ++){ans.clear();int n;scanf("%d",&n);for(int i = 1; i <= n; i++){string s,d;cin >> s >> d;ans.insert({mouth[s],day[d]});}string st,da;cin >> st >> da;int M = mouth[st], D = day[da], flag = 1;cout << "Case #" << Case << ": ";for(auto it = ans.begin();it != ans.end(); it++){pair<int,int> p = *it;if(p.first == M){if(p.second > D){flag = 0;cout << mouth_tran[p.first] << " " << day_tran[p.second] << endl;break;}}if(p.first > M){flag = 0;cout << mouth_tran[p.first] << " " << day_tran[p.second] << endl;break;}}if(flag)cout << "See you next year" << endl;}return 0;
}

B题:Infimum of Paths

题型:图论

题目大意:n个点,m条边。设某条边为 e i e_i ei​,权值为 w e i w_{e_i} wei​​,则从u到v的路径 l e x ( p ) lex(p) lex(p)满足
l e x ( p ) = l e x ( [ e 1 , e 2 ⋯ , e k ] ) = ∑ i = 1 k 1 0 − i w e i lex(p) = lex([e_1,e_2 \cdots ,e_k]) = \sum_{i=1}^{k}10^{-i}w_{e_i} lex(p)=lex([e1​,e2​⋯,ek​])=i=1∑k​10−iwei​​
从0到1的路径的最小值

C题:Mr. Panda and Typewriter

题型:字符串(初步判断)

题目大意:构造出一个串,在结尾添加任意字符串花费x单位时间,Ctrl+C花费y单位时间、Ctrl+V花费z单位时间。求构造一个串的最小花费时间T。

D题:Pulse Nova

题型:几何问题

题意:存在n条直线,有一个半径为R的圆,找到一个这个圆的位置,使直线被圆所截的线段总长最大,求最大值。

E题 Non-Maximum Suppression

题型:思维题

题意:有n个大小相同的正方形(含权值),一个threshold,优先选择权值最大的正方形。如果要选择的正方形和选中的正方形的 I o U ≤ t h r e s h o u l d IoU \leq threshould IoU≤threshould则选中。求选中的个数和编号。

F题:Ferry

题型:思维

题意:(未知)

G题:Game on the Tree

题型:博弈论(一眼博弈,还需要树上操作、DP等)

题目大意:有硬币在节点1处,双方玩家在树上跳硬币,要求这一步跳的距离要比上一步大(第一步除外)不能跳的一方输。求,有多少种字树可以使后手胜出。

H题 Mr. Panda and SAD

题型:字符串疲惫

题目大意:给n个串,任意拼成一个,求出现的“SAD”最多有多少个。

I题:Mr. Panda and Blocks

题型:构造

题目大意:有n种颜色,n*(n+1)/2种方块(每种只有一个)用这些方块拼成一个颜色相连,方块相连的城堡。输出地形图

思路:可以向高处叠层数所以:eg:n = 4

#include <iostream>
#include <algorithm>using namespace std;int main()
{int T;scanf("%d",&T);for(int Case = 1; Case <= T; Case ++){int n;scanf("%d",&n);printf("Case #%d:\nYES\n",Case);for(int i = 1; i <= n; i++)for(int j = 1; j <= i; j++)printf("%d %d %d %d %d %d %d %d\n",j,i,j,1,n-i,j,2,n-i);}return 0;
}

J题:Wire-compatible Protocol buffer

题型:模拟

题目大意:都在这了

K题:Russian Dolls on the Christmas Tree

题型:树上启发式和并

题目大意:一棵树上有n个节点,1为根节点。选择一个节点,则以该节点为根的子树都会被选中,求选择第i个节点后,被选择的点构成的连续区间有多少个。i从1取到n,输出所有值。

L题:Spiral Matrix

题型:规律题

题目大意:在n*m的矩阵中,选择某一点为起点,可以直走,可以向右走,每个格子只需走一次。问有多少种方法可以全走完。

思路:深搜打表打表找规律(应该能推出来)

2019 CCPC final相关推荐

  1. 2019 CCPC Final K - Russian Dolls on the Christmas Tree

    ~模板题qwq 题意:在一棵树中,假如某些节点的序号值是相连的,则可以把他们连接在一起,然后问你每一棵子树中的所有节点(包括当前节点)经过连接之后最后能剩余几段. 思路:很明显是一个树上启发式合并的模 ...

  2. 1479A - Searching Local Minimum 交互,二分,2019 ccpc 哈尔滨 E 拓扑排序

    1479A - Searching Local Minimum 交互,二分 找一个区间[l,r]始终满足a[l+1]>a[l]&&a[r]<a[r+1],然后不断缩小区间当 ...

  3. 2019 CCPC 女生专场重现赛 Circle

    Problem Description 在半径为 1 的圆上有 n 个点,它们也是圆的 n 等分点,将每个相邻的 n 等分点相连,组成了一个正 n边形,现在你可以在圆上再增加一个点,使得新的 n + ...

  4. 秦皇岛 2019 CCPC区域赛 部分代码

    Decimal Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 131072/131072 K (Java/Others) Total Sub ...

  5. 2019 CCPC 秦皇岛: MUV LUV EXTRA

    MUV LUV EXTRA (本篇主要内容,kmp求最短循环节) 题目传送门: MUV LUV EXTRA 题意: 给你一个字符串和两个整数a和b.在小数点后,找到一个循环节 l,循环长度为p.求 a ...

  6. localhost/ ~wallhe/index.php,实战:2019 0ctf final Web Writeup(一)

    前言 鸽了好久的题解,因为自己事务缠身,一直没时间写一下最近比赛的题解,趁近日有空,来填坑~ 第一次参加0ctf新星赛就拿了冠军,还是非常开心的.比赛过程中,web共4道题,我有幸做出3道,java实 ...

  7. 【HDU6742 2019 CCPC 秦皇岛 】MUV LUV ALTERNATIVE 曼哈顿剧院 两出口观众逃生最短时间

    应岛娘邀请,自费机票回国打比赛. 队名--友谊是魔法.最终榜单如下--https://ccpc.io/post/187 这题是场上的L题. 一年多不写题也不想题情况下遇上了这场比赛的L题.是个贪心题, ...

  8. 2019 CCPC wannfly winter camp Day 5

    C - Division 思路:我们考虑到一点,从大往小取得顺序是不会有问题的,所以可以直接主席树,但是开不下空间,我们可以log分段求. #include<bits/stdc++.h> ...

  9. 2019 CCPC - 网络选拔赛 A题^^

    一个多月前打的,但是由于一点事情一直没写关于A题的反思,今天有空果断补上: Problem Description Bit operation is a common computing method ...

最新文章

  1. Webpack学习-Loader
  2. Smali插桩打日志
  3. eclipse 如何使用svn
  4. 计算机的组成_计算机网络的组成和分类
  5. Python Django的分页插件使用示例
  6. Top10 Web2.0在线生成器
  7. iOS 力学动画生成器UIKit Dynamics 之碰撞效果解说
  8. word转PDF(使用liberOffice插件)
  9. 物联网可靠连接——PLC-IOT电力线载波通讯
  10. 超简单!一部手机就能提取视频中的语音转换成文字
  11. 计算机辅助药物设计的心得,计算机辅助药物设计实验的探索与心得.doc
  12. 中大计算机研究生华为,考上中山大学很厉害吗?毕业后有机会去华为吗?本文有答案...
  13. 李学龙当选美国计算机杰出科学家的报道,我校李学龙教授当选美国医学与生物工程院会士...
  14. ESPRIT 2019车铣复合编程基础到五轴 走心机 视频教程
  15. Windows服务器IIS搭建网站
  16. 陪审团(01背包问题倒推具体方案)
  17. Alinenware 17R4恢复原版OEM系统教程
  18. 【C++笔记】1. C语言复习
  19. 众安保险测试开发一面
  20. 中国互联网+物流行业应用模式与市场需求预测报告2022版

热门文章

  1. jsp java json解析,jsp中获取json字符串,并解析
  2. (转)The C10K problem翻译
  3. html中 让图片展开,HTML中如何让图片按原有大小比例展示?
  4. 沉降预测算法-双曲线法
  5. [转贴]世界品牌500强排行榜前40名(2005-07-30)
  6. word 2013文字下面全是蓝色波浪线
  7. 机械制造基础——加工方法
  8. 车削加工振刀打刀的现象如何处理?
  9. 奇迹mu游戏服务器GS修改添加扩展DLL的方法
  10. 视频教程-STM32标准库的引入视频课程-第3季第6部分-单片机/工控