思维题 / Codeforces
Mercury_Lc
宁愿笑着哭
展开
-
数字游戏 【规律 + 思维】
数字游戏Description栋栋正在和同学们玩一个数字游戏。游戏的规则是这样的:栋栋和同学们一共n个人围坐在一圈。栋栋首先说出数字1。接下来,坐在栋栋左手边的同学要说下一个数字2。再下面的一个同学要从上一个同学说的数字往下数两个数说出来,也就是说4。下一个同学要往下数三个数,说7。依次类推。为了使数字不至于太大,栋栋和同学们约定,当在心中数到 k-1 时,下一个数字从0开始数。例如,当k=13时,栋栋和同学们报出的前几个数依次为:1, 2, 4, 7, 11, 3, 9, 3, 11,原创 2020-07-13 10:04:48 · 1358 阅读 · 0 评论 -
翻硬币 【 字符串 | 思维 】
翻硬币Description小明正在玩一个“翻硬币”的游戏。桌上放着排成一排的若干硬币。我们用 * 表示正面,用 o 表示反面(是小写字母,不是零)。比如,可能情形是:**oo***oooo如果同时翻转左边的两个硬币,则变为:oooo***oooo现在小明的问题是:如果已知了初始状态和要达到的目标状态,每次只能同时翻转相邻的两个硬币,那么对特定的局面,最少要翻动多少次呢?我们约定:把翻动相邻的两个硬币叫做一步操作,那么要求:Input两行等长的字符串,分别表示初始状态和要原创 2020-07-09 20:47:23 · 182 阅读 · 0 评论 -
回文数字
回文数字Description观察数字:12321,123321 都有一个共同的特征,无论从左到右读还是从右向左读,都是相同的。这样的数字叫做:回文数字。本题要求你找到一些5位或6位的十进制数字。满足如下要求:该数字的各个数位之和等于输入的整数。Input一个正整数 n (10<n<100), 表示要求满足的数位和。Output若干行,每行包含一个满足要求的5位或6位整数。数字按从小到大的顺序排列。如果没有满足条件的,输出:-1解析:枚举每一位数,因为原创 2020-07-04 20:10:52 · 747 阅读 · 0 评论 -
B. Alyona and a Narrow Fridge 【 思维题 】
B. Alyona and a Narrow FridgeCodeforces Global Round 2&:这题看到了一种很简单的做法,于是按照敲一波,比原来打的好看多了。题意:给你一个 h * 2 的冰箱,然后给你一些随机高度 A * 1的瓶子 ,一个高的瓶子一旦放上,那么这一段就不能发其他的了,但是旁边的一个单位宽度依然可以放置,如图,下面两个一个高度为 5,另一个为...原创 2019-04-17 20:07:16 · 443 阅读 · 0 评论 -
C. Polycarp Restores Permutation Codeforces Round #547 (Div. 3)
Codeforces Round #547 (Div. 3) #include <bits/stdc++.h>#define ll long longusing namespace std;int n,m;map<int,int> mp;ll pre[200005],s[200005],a[200005];int main(){ scanf("%d...原创 2019-03-29 20:03:18 · 197 阅读 · 0 评论 -
D1. Toy Train (Simplified) 和 D2. Toy Train
Codeforces Round #542 [Alex Lopashev Thanks-Round] (Div. 2) Codeforces Round #542 [Alex Lopashev Thanks-Round] (Div. 1) 题意:分别在不同的起点出发,把糖果运到相应的编号的车站需要的最小距离,在每一站火车只能装一个糖果,相邻车站距离是 1.&:因为只能装一个糖...原创 2019-03-01 17:08:27 · 682 阅读 · 0 评论 -
C. Connect 【 BFS + 暴力 】
Codeforces Round #542 [Alex Lopashev Thanks-Round] (Div. 2) 题意:给你一个 n * n 的图,给你起点和终点,只要是 0 的位置就可以随便移动,可以上下左右移动,问从起点到终点的最小距离的平方,这里的距离是欧几里得距离,可以通过走 0 来减小距离。&: BFS 两个点,暴力可以走的点的数组求最小距离。#i...原创 2019-03-01 16:56:19 · 301 阅读 · 0 评论 -
B. Two Cakes
Codeforces Round #542 [Alex Lopashev Thanks-Round] (Div. 2) 题意:两个人都从最左边出发,对于每个人来说都要拿够从 1 - n 的每个数,相邻两个数距离是 1,问最小花费步数可以让两个人全部拿够。&:排序,依次选取就可以。#include<bits/stdc++.h>using namespace ...原创 2019-03-01 16:51:52 · 480 阅读 · 0 评论 -
A. Be Positive 【 Codeforces Round #542 [Alex Lopashev Thanks-Round] (Div. 2) 】
Codeforces Round #542 [Alex Lopashev Thanks-Round] (Div. 2) 题意:给你 n 个数,找个 d 让这个 n 个数除以 d 之后大于零的数至少是 n / 2 个。&:分类一下,输出 1 或者 -1 或者 0 就可以了。#include<bits/stdc++.h>using namespace std;...原创 2019-03-01 16:48:43 · 212 阅读 · 0 评论 -
Palindromization Gym - 100971K
K - Palindromization Gym - 100971K 题意:恰好删除一个字符让原来的串变成回文串。&:感觉比赛的时候写的好麻烦,赛后看了看别人的,觉得和我的想法一样,先找两边,如果不行,那么第一次删除左边,第二次删除右边,然后讨论最后结果。当然要加入一个计数器,来判断需要修改的数量。#include <bits/stdc++.h>usi...原创 2019-02-16 15:32:32 · 253 阅读 · 0 评论 -
Triangles Gym - 100971C
C - Triangles Gym - 100971C 题意:找一个数能够满足在给定的n个数里面随便找两个数构成三角形。&:找到临界值,也就是两边之差最大的和两边之和最小的。 #include <bits/stdc++.h>using namespace std;typedef long long ll;ll a[200005];int m...原创 2019-02-16 15:23:12 · 214 阅读 · 1 评论 -
Derangement Gym - 100971B
个人训练赛Derangement Gym - 100971B &:把需要调换的记录一下,如果偶数个就两两调换,如果是奇数个,就先调偶数个,剩下一个与随便一个需要调换的调换,特判一下只有一个的时候。#include <bits/stdc++.h>using namespace std;int a[200006];int main(){ ...原创 2019-02-16 15:19:29 · 220 阅读 · 0 评论 -
C、Grid game 【 Codeforces Round #534 (Div. 2) 】
C、Grid game题意:给你一个4 × 4 的方格,然后给你一些1 × 2 或者 2 × 1的小方格,当这些方格在一行或者一列的时候会消除掉,问最佳放置位置。思路:QAQ,什么时候思维会变强一些。选定一些地方,只放这几个地方就可以了。两个 flag ,分别是放置行和列的标记,如果没放之前,假设先来到是竖的, 所以先放到上面位置 [ 1 , 4 ],如果再来一个竖的,那么就可以放到下面...原创 2019-01-23 09:30:31 · 229 阅读 · 1 评论 -
C. Prefixes and Suffixes ( Codeforces Round #527 (Div. 3) )
题意:给你一个 n 长度的字符串,给你 2n - 2 个子串,其中有 n - 1 个前缀和 n - 1 个后缀,输出一个合法的判断。题解: 找到 n - 1 长的子串一个是(假设第一个是)最长前缀,另一个是最长后缀。 判断假设是否正确,遍历所有子串,如果符合前缀 tot 加 1,如果 tot 不够 n - 1 或者我们假设的那个前缀从第二个开始不等于那个后缀的前 n - 2 个...原创 2018-12-19 19:38:03 · 310 阅读 · 0 评论 -
A. The Fair Nut and Elevator (Codeforces Round #526 (Div. 2))
A. The Fair Nut and Elevator好笨啊QAQ。暴力枚举的题,连分类都不用。从电梯初始位置到第一层、人到第一层、间隔的层数,往返路程。#include <bits/stdc++.h>using namespace std;int a[105];int main(){ int n; while(~scanf("%d",...原创 2018-12-12 21:32:41 · 248 阅读 · 0 评论 -
Bacteria (Gym - 101911C)
2018-2019 ACM-ICPC, NEERC, Southern Subregional Contest, Qualification StageBacteriaGym - 101911C题意:像2048这个游戏,相同的两个可以合并在一起变成一个数(数值变成二倍),但是现在有一些数只有一个,所以需要添加一个和这些数相同的,让他们可以合并在一起,现在问最小添加多少个数可以把所有的数...原创 2018-11-24 20:56:25 · 417 阅读 · 0 评论 -
Magic Points ZOJ - 4032
The 15th Zhejiang Provincial Collegiate Programming Contest Sponsored by TuSimpleMagic PointsZOJ - 4032题意:给你3n个点,编号从0到3n-1,呈正放心分布,找n对点连起来,让线与线的交点经可能多。题解:最下面的这n个点,前n - 1个点和第n + 1到 2n - 1个点相连,第n...原创 2018-11-02 16:18:49 · 267 阅读 · 0 评论 -
Cats and Fish HihoCoder - 1631
Cats and Fish HihoCoder - 1631题意:有一些猫和一些鱼,每只猫有固定的吃鱼速度,吃的快的猫优先选择吃鱼,问在x秒时有多少完整的鱼和有多少猫正在吃鱼?题解:模拟一下。两层循环模拟在每一秒时,每个猫的状态是什么样子的,如果在这一秒这个猫没有吃鱼,而鱼还有剩余,那么就给猫吃,如果当前t秒是猫吃鱼速度的倍数,就说明这个猫刚好吃完,又可以给她鱼吃了。...原创 2018-11-06 23:56:39 · 211 阅读 · 0 评论 -
Jumbled String (Kattis - jumbledstring)(思维题)
ProblemRecall that a subsequence of a string is any string obtained by removing some subset of characters from the string, for instance “string”, “sing”, “i” and “sg” are all subsequences of “string...原创 2018-10-17 09:35:03 · 950 阅读 · 2 评论