模拟题
模拟题,简单题
zxzxin
分享、总结 C++、Java、算法 等技术
展开
-
POJ - 2039. ToAndFro(竖型输出)
POJ2039-ToAndFro(竖型输出)题目链接题意 就是给你一个数n,和一串字符串,然后要你将这些字符串分成n列(蛇形),并且一竖一竖的打印;解析 可以定义一个bool型变量,表示从左到右还是从右到左,然后,通过行列的关系输出即可。如果是往右边走,对应的下标关系就是行数*n + 列数,往左边走的就是(行数+1)*n-列数-1;import java.i...原创 2018-07-31 20:40:02 · 298 阅读 · 0 评论 -
Codeforces - 1088B & 1084B & 1084A & 1077C
Codeforces - 1088BCodeforces-1088B - Ehab and subtractionCodeforces-1088B - Ehab and subtraction题目链接题目大意给你n、k,以及n个数,要你从这n个数中选取k次,每次选最小的,并且选完之后所有的数要减去这个选出来的数。如果里面的数都是0了,就输出0。解析先排序,然后模拟这个过程...原创 2018-12-15 13:12:46 · 358 阅读 · 0 评论 -
Codeforces-1090A & 1090M & 1088A & 1060A & 1061A
Codeforces-1090A & 1090M & 1088A & 1060A & 1061ACodeforces-1090A - Company MergingCodeforces-1090M - The Pleasant WalkCodeforces-1088A - Ehab and another construction problemCode...原创 2018-12-10 15:40:38 · 586 阅读 · 0 评论 -
Codeforces-1082A & 1073A & 330B & GYM101502I
Codeforces-1082ACodeforces-1082A - Vasya and BookCodeforces-1082A - Vasya and Book题目链接题目大意就是给你四个数n、x、y、d,在可以将这个四个数看做在一个坐标轴上,要你从x位置走到y位置,每次只能走d步,然后如果超过了边界就直接走到边界,问你从x走到y位置的最小步数;解析其实很简单,如果间隔距...原创 2018-12-22 13:41:57 · 338 阅读 · 0 评论 -
Codefores - 377A & 476B & 550A & 550C
Codeforces - 377A - MazeCodeforces - 377A - Maze题目链接题目大意就是在一个maze中,有empty cell(.)和wall(#),现在要你将k个.变成X,使得其他.还能连通。解析反过来思考,设.的数目为emptyNum,直接搜索到任意一条emptyNum - k的.的连通路径即可,其余的k个点就是答案。import java...原创 2018-12-29 00:12:56 · 292 阅读 · 0 评论 -
LeetCode - 451. Sort Characters By Frequency(按照字符出现次数排序(简单题))
LeetCode - 451. Sort Characters By Frequency(按照字符出现次数排序(简单题))题目链接题目解析很简单的题目,直接按照出现次数排序即可,这里只是为了熟练Java8的写法以及代码的优化。上面代码是自己写的(比较冗余),下面的是参考别人的。class Solution { private class Pair implements...原创 2019-01-05 22:41:01 · 205 阅读 · 0 评论 -
Codeforces - 363B. Fence & 466C. Number of Ways
目录Codeforces - 363B - FenceCodeforces - 363B - Fence题目链接题目大意就是给你一个n、k,然后给你n个数,要你在n个数中求最小的k个数的和,这k个数必须是连续的。解析思路:先求前k个数的和,然后类似和滑动窗口一样;用两个指针,第一个i指向窗口的左边,另一个j指向窗口的右边,然后每次左边去掉一个数,右边加上一个数,然后计算...原创 2019-01-07 15:52:42 · 362 阅读 · 0 评论 -
LeetCode - 680. Valid Palindrome II(删除一个字符判断能否构成回文)
LeetCode - 680. Valid Palindrome II(删除一个字符判断能否构成回文)题目链接题目就是给你一个字符串,问你是否能删除最多一个字符(可以不用删除) ,得到一个回文串。解析暴力枚举删除每一个位置的方法肯定是行不通的。这里需要用到回文串的性质。看下面两个例子:案例一: e a d c b c a e另一种情况:e a b f f b e a e...原创 2019-01-07 22:57:41 · 1299 阅读 · 0 评论 -
Codeforces - 1108C. Nice Garland & 1108D. Diverse Garland(排列 | 枚举 )
Codeforces - 1108C. Nice Garland & 1108D. Diverse Garland(排列 | 枚举 )Codeforces - 1108C. Nice GarlandCodeforces - 1108D. Diverse Garland Codeforces - 1108C. Nice Garland题目链接题目给你n个有n个字符的字符...原创 2019-01-31 22:40:45 · 1167 阅读 · 0 评论 -
Codeforces - 1106B. Lunar New Year and Food Ordering (模拟)
Codeforces - 1106B. Lunar New Year and Food Ordering (模拟)题目链接题目一个饭店,有n种食物,每种食物一开始的数量存在rc数组中,每种食物每一份的花费存在sc数组中,然后给你m个顾客,每一个顾客点餐,给你两个数t、d,代表的意思是点d份t食物,点的规则如下:如果t食物还够d份,就点d份t食物,并将t食物的剩余数量更新;如果t食物不够...原创 2019-02-01 22:19:27 · 373 阅读 · 0 评论 -
POJ1006-Biorhythms(枚举技巧)
POJ1006-Biorhythms(枚举技巧)简单枚举优化枚举题目链接题目大意人有三个生理高峰期,即体力、感情和智力,它们的周期长度分别为23天、28天和33天。每一个周期有一天是高峰,这一天很特别。由于这三个生理周期时间长短不同,所以通常三个周期的高峰不会落在同一天。现在想知道何时三个高峰落在同一天。对于每个周期,给出从当前年份的第一天开始,到出现高峰的天数(不一定是第一次高...原创 2018-12-03 23:54:25 · 287 阅读 · 1 评论 -
Codeforces-1089L & 1080A &1065A & 1064A
Codeforces-1089L & 1080A & 1065A & 1064ACodeforces-1089L-LazylandCodeforces-1080A-Petya and OrigamiCodeforces-1065A-Vasya and ChocolateCodeforces-1064A-Make a triangle!Codeforc原创 2018-12-05 20:13:07 · 326 阅读 · 0 评论 -
POJ - 2136. VerticalHistogram(统计字母个数)
PO2136- VerticalHistogram(统计字母个数)题目链接题意 就是给你四行字符串,然后要你统计大写字母(只有大写字母)的个数,然后以特定的方式打印出来;解析 使用一个nums数组保存一下出现的次数,注意’A’对应的ascii码为65,所以稍微转换一下,然后再找到个数对应关系,逐行打印即可;import java.io.BufferedRe...原创 2018-07-31 20:45:43 · 195 阅读 · 0 评论 -
LeetCode - 566. Reshape the Matrix(重塑矩阵)(简单题)
LeetCode-566. Reshape the Matrix(重塑矩阵)(简单题)直接填充坐标对应题目链接题目解析直接填充这个方法很简单,遍历nums中的元素,一个一个填充到新数组即可。 public int[][] matrixReshape(int[][] nums, int r, int c) { if(nums....原创 2018-08-24 08:29:49 · 541 阅读 · 0 评论 -
LeetCode - 48. Rotate Image(将正方形矩阵旋转90度)
LeetCode-48. Rotate Image(将正方形矩阵旋转90度)题目链接题意 给定一个 n × n 的二维矩阵表示一个图像。 将图像顺时针旋转 90 度。 说明: 你必须在原地旋转图像,这意味着你需要直接修改输入的二维矩阵。请不要使用另一个矩阵来旋转图像(额外空间复杂度O(1))。解析 这个也是一个宏观的调度问题,还是使用分圈的处...原创 2018-07-29 23:35:50 · 599 阅读 · 0 评论 -
LeetCode - 54. Spiral Matrix(圈圈打印矩阵)
LeetCode-54. Spiral Matrix(圈圈打印矩阵)题目链接题意 给定一个包含 m x n 个元素的矩阵(m 行, n 列),请按照顺时针螺旋顺序,返回矩阵中的所有元素。解析 题目不难,但是如果去一个个的打印的话会比较的麻烦,好的方法是使用矩阵分圈处理的方式,在矩阵中使用(ar,ac)表示左上角,(br,bc)表示矩阵的右下角,每次只需要通过这四个...原创 2018-07-29 23:12:56 · 401 阅读 · 0 评论 -
LeetCode - 283. Move Zeroes(移动零)(简单题)(三种写法)
LeetCode-283. Move Zeroes(移动零)(简单题)(三种写法)O(n)空间,O(n)时间O(1)空间,O(n)时间O(1)空间,O(n)时间 + 巧妙使用swap()优化题目链接题目O(n)空间,O(n)时间这个方法很简单,直接使用一个额外的数组来保存原数组非0的元素,最后再补上0即可。 public void moveZer...原创 2018-09-12 20:11:53 · 202 阅读 · 0 评论 -
LeetCode - 463. Island Perimeter(岛屿的周长)(规律/DFS/BFS)
LeetCode463-Island Perimeter(岛屿的周长)(规律/DFS/BFS)找规律BFSDFS题目链接题目找规律这个方法的思路就是:首先看如果没有相邻的方格的话,就是4 * (grid[i][j] == 1)的数量 ,记为island;如果有相邻的,我们只需要遍历每一个,上下左右4个方向,有相邻的统计即可,最后用island - 这个数量即可;cl...原创 2018-10-08 12:42:14 · 551 阅读 · 0 评论 -
LeetCode - 628. Maximum Product of Three Numbers(数组中三个数的最大累成积)(简单题)
LeetCode628-Maximum Product of Three Numbers(数组中三个数的最大累成积)(简单题)排序方法O(N)方法题目链接题目排序方法很容易想到最大的累成积只有可能是最大的三个数相乘(max1 * max2 * max3)或者最大数(max1) * 最小的数(min1) * 次小的数(min2) 。于是第一种方法就是排序,然后找出这些数即可。...原创 2018-10-09 12:30:18 · 190 阅读 · 0 评论 -
POJ1013-Counterfeit Dollar(枚举)
POJ1013-Counterfeit Dollar(枚举)题目链接题目大意有12枚硬币,其中有11枚真币和1枚假币,真币和假币重量不同,但不知道是真币重还是假币重,现在,用一架天平称了这些硬币三次,给你称量的结果,请你找出假币,并且确定假币是重还是轻。Sample Input1 ABCD EFGH even ABCI EFJK up ABIJ EFGH even Sample...原创 2018-12-04 14:37:01 · 296 阅读 · 0 评论 -
Codeforce-1080B & 1077B & 1077A & 1075A
Codeforce-1080B & 1077B & 1077A & 1075ACodeforce-1080B-Margarite and the best presentCodeforce-1077B-Disturbed PeopleCodeforce-1077A-Frog JumpingCodeforce-1075A-The King’s RaceCode...原创 2018-12-07 18:52:56 · 643 阅读 · 0 评论 -
Codeforces - 1107B. Digital root & 1107C. Brutality(规律 & 贪心)
Codeforces - 1107B. Digital root & 1107C. Brutality(规律 & 贪心)Codeforces - 1107B. Digital rootCodeforces - 1107C. BrutalityCodeforces - 1107B. Digital root题目链接题目一个数x的数根的定义S(x)是如题目中给出的样子...原创 2019-01-29 21:11:35 · 796 阅读 · 0 评论