
模拟
给我一瓶AC钙
是一颗萌菜没错了
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
(CodeForces) L - LRU Algorithm Gym - 102394L (模拟+字典树)
传送门题意:给定一个n个数的数字序列,第i个数为a[i],每次操作会将a[i]插入或移到最前端:1.若a[i]已经在序列中出现过,则将其移到最前端,并删除原出现位置2.若a[i]未出现过,则直接将其插入到最前端有q个询问,每个询问给出一个长度为m的序列,问是否在某个时刻询问序列与操作的序列相同,忽略后缀的0(就是操作系统中的LRU,刚好在学解:由于物理块的个数不知道,我们可...原创 2019-11-14 20:43:09 · 517 阅读 · 0 评论 -
(POJ) 3276 Face The Right Way(模拟+尺取)
传送门题目大意:N头牛排成了一列,但有的朝前有的朝后,现在农夫买了一台机器,但是这台机器购买时必须要设置一个固定的K,每次操作都会使K头连续的牛转向,求出让所有的牛能朝向前的最少次数M和对应的K。解题思路:显然对同一个区间翻转一次就行了,翻转多次都是多余的。我们需要从最左边的牛开始翻转,因为它只属于一个区间,如果它朝后,那就不得不翻转。所以这个题我们可以去枚举长度k去解决。但是如果我们朴素...原创 2018-12-27 20:18:11 · 235 阅读 · 0 评论 -
(POJ) 3279 Fliptile
传送门题目大意:有一个m*n的格子,格子一面是白色的,一面是黑色的。现在需要将所有的格子都翻成白色的,但是由于牛蹄子很大,所以他每次翻一个都会影响到上下左右四个,现在让你求出最少的翻转次数,输出翻转矩阵。解题思路:这个题虽然数据很小,但是如果我们简单的考虑每个格子的翻转情况,那会有2^mn种情况,直接pass,同一个格子当然是只能翻转一次,翻多次这是多余的。由于第一行的格子可以被下一行或者...原创 2018-12-29 17:33:33 · 249 阅读 · 0 评论 -
(Nowcoder) B.Shorten IPv6 Address
传送门解:就是个模拟了,唯一要注意的删除同样的0,删除中间的使得结果更短,因为多删除一个:号。比赛写的代码就比较臭了。#include<bits/stdc++.h>#define il inline#define pb push_back#define ms(_data,v) memset(_data,v,sizeof(_data))#define sc(n) ...原创 2019-08-05 10:42:14 · 289 阅读 · 0 评论 -
(2019南昌网络赛) B. Fire-Fighting Hero E. Magic Master
传送门B. Fire-Fighting Hero解:给消防队加一个源点0,从他开始跑一次dijkstra,再取最大值。消防英雄的话跑一次,两次dijkstra即可。#include<bits/stdc++.h>#define il inline#define pb push_back#define ms(_data,v) memset(_data,v,size...原创 2019-09-09 11:16:30 · 443 阅读 · 2 评论 -
(2019沈阳网络赛) H. Texas hold'em Poker (模拟)
传送门解:细心的模拟即可。#include<bits/stdc++.h>#define il inline#define pb push_back#define ms(_data,v) memset(_data,v,sizeof(_data))#define SZ(a) int((a).size())using namespace std;typedef long...原创 2019-09-15 09:55:47 · 526 阅读 · 0 评论