如何建设一个小型网站,wordpress主题放在,中国商务商会官方网站,网络营销有什么作用Robocom赛前一天熬夜打了一场edu,全程眯眯眼#xff0c;三题滚粗了#xff0c;前三题花了一小时才写完#xff0c;第四题写了一小时也没写明白#xff0c;好像预示着Robocom的结局#xff1f;
早上七点醒了#xff0c;感觉自己浑身无力#xff0c;想睡觉但是又睡不着的…Robocom赛前一天熬夜打了一场edu,全程眯眯眼三题滚粗了前三题花了一小时才写完第四题写了一小时也没写明白好像预示着Robocom的结局
早上七点醒了感觉自己浑身无力想睡觉但是又睡不着的折磨一直笼罩在我的身边还是强忍着自己的意识睡了一小时一小时反复醒了五六次把星期天网络赛的板子整理了一下然后又睡觉了。
12点吃完饭了。
躺了一个小时在睡觉和玩手机交题度过然后一点半开始登录。
开局看了 T1 一读就是熟悉的味道让人难以接受的题面风格。但是吃了三次答辩的我已经见怪不怪。 看到输入中有一个条件让人耳目一新当自己的输入是yourname的时候要把账号替换成你的名字否则就禁赛处理??? 想了一会这个题目的评测机制感觉普通spj也实现不了的样子觉得很神奇。题面很简单照着要求模拟一下即可也没啥太恶心的东西。
T2 看了一下T2此时我脑子里是? ? ? ? ? ? ? ? ? 莫非是个cy出的大模拟我先看看别的题吧
扫了一遍题目咦这个T5题面这么短我就读了一遍很快理解了题意感觉T5的读题风格显然不同于别的题面看完之后一脸懵逼想了一会觉得很难感觉想不明白然后思考了一会看了眼榜于是决定回来搞搞T2。
于是又回到了答辩看着难以忍受的题面我理清了题目想表达的意思不过也是够答辩的。总体题意就是 六种颜色八个牌号问你自己的牌型有多少种然后你可以询问一次排除答案询问以问三种颜色和元素总和的方式询问。排除答案的数量是min(k1,k2)k1k2分别为回答是或不是排除的答案数量问你询问一次后你手里牌的可能数量(去掉排除的)。 看了眼数据范围模拟一下写个dfs预处理C(6,3)的所有三元组然后元素总和枚举[3 , 24]即可暴力算算排除的和未排除的然后取一个min就做完了。
做完前两题花了30min。 然后我看了一眼榜单我发现有人过了T5,心里暗想着T5应该不难。 然后我就去看了T5,然后我手玩了一下我发现一些好玩的性质 第一个栈用了 i i i个第二个栈用了 j j j个此时留在数组里的数量好像是一个定值耶。我们采取这样的策略就是能删就删的策略就可以让这个数组大小固定[因为我们肯定要尽可能的小]。 我们就定义 c n t [ i ] [ j ] cnt[i][j] cnt[i][j]为第一个栈用了 i i i个第二个栈用了 j j j个此时留在数组里的数量。这个转移我们可以用一个类似于dp的转移得到。 即考虑 c n t [ i ] [ j ] cnt[i][j] cnt[i][j]从 c n t [ i − 1 ] [ j ] cnt[i-1][j] cnt[i−1][j]或者 c n t [ i ] [ j − 1 ] cnt[i][j-1] cnt[i][j−1]转移接下来的问题就是怎么判断数组是否有 k k k个相同的元素呢如果我们要是加的是 a [ i ] a[i] a[i]元素那我们就看看cnt[i - 1][j]这个状态里面有多少个a[i],显然这部分可以由处理得到我赛场上用了一个vector配合upper_bound的做法去得到数组里面含有 a [ i ] a[i] a[i]的元素个数。 好了现在这个 c n t [ i ] [ j ] cnt[i][j] cnt[i][j]可以由两个状态转移了我们就考虑dp一下转移顺序吧。我们dp方式就是 d p [ i ] [ j ] dp[i][j] dp[i][j]表示第一个栈用了 i i i个第二个栈用了 j j j个此时数组使用的最大数量是多少。 那我们的转移方式就是 1.从dp[i - 1][j]转移 d p [ i ] [ j ] m i n ( d p [ i ] [ j ] , m a x ( d p [ i − 1 ] [ j ] , c n t [ i − 1 ] [ j ] 1 ) ) dp[i][j] min(dp[i][j] , max(dp[i - 1][j] , cnt[i -1][j] 1)) dp[i][j]min(dp[i][j],max(dp[i−1][j],cnt[i−1][j]1)) m a x ( d p [ i − 1 ] [ j ] , c n t [ i − 1 ] [ j ] 1 ) max(dp[i - 1][j] , cnt[i -1][j] 1) max(dp[i−1][j],cnt[i−1][j]1)是什么含义呢就是表示前面转移取出来一个数的话势必要多用一个数组位置然后我们看看和之前开的数组大小是否能装下不能装下就撑开。 2.从dp[i][j - 1]转移 同理 d p [ i ] [ j ] m i n ( d p [ i ] [ j ] , m a x ( d p [ i ] [ j − 1 ] , c n t [ i ] [ j − 1 ] 1 ) ) dp[i][j] min(dp[i][j] , max(dp[i][j - 1] , cnt[i][j - 1] 1)) dp[i][j]min(dp[i][j],max(dp[i][j−1],cnt[i][j−1]1))
然后过了样例交了一发就1a了QaQ我是本科组全场第二个过的qaq。
然后看T3,T4过了不少了然后我就开始收拾烂摊子心想有机会 a k ak ak。
于是开看T3 T3显然是一个很好写的大模拟用一个优先队列维护结束位置用户编号碗号就可以了。好的我经常被这样的题折磨了很多次我知道一个好写的写法就是提前先把 m m m个碗放进去就少了很多不必要的判断即判断优先队列里面的元素个数是否小于等于 m m m。然后很快的就写完了。
此时已经过去了 1 h 1h 1h。 看了一眼榜 r k 1 rk1 rk1的那名老哥倒着开题只差了 T 3 T3 T3了。
然后我去开T4 T4 一眼读完是一个大模拟感觉时间复杂度显然不够用然后感觉有种拓扑性质然后发现貌似两个编号的拓扑关系只跟上面相邻位置有关(边界)要判断相邻位置即可。预处理的时候就是看看每个元素的上方上面如果相邻元素和自己一样就不用管了这两个是一家人如果不相同的话那么肯定是上面的先拿走了自己再拿走那我们就加边然后我们按照这样的方式加边肯定得到一个有向图然后跑一次拓扑序题目貌似还要求了最小字典序这好办我们在跑拓扑序的时候用优先队列维护我们只拿出来最小的。这样你就获得了一个26的好成绩然后我的做法在接下来的50min一直在mle和wa中度过。
不知道T4的神奇例子是什么也许是我做法的问题我觉得国赛的样例还是比较神奇的感觉骗骗也能骗很多分我的T4应该不是正解但是还是骗到了26分没有以 a k ak ak收尾但是以 116 116 116收尾也是对得起自己的竞赛生涯了。
下赛季加油!