![](https://img-blog.csdnimg.cn/20200201131417528.jpg?x-oss-process=image/resize,m_fixed,h_224,w_224)
LeetCode+Codeforce+CCF在线刷题
在线刷题,包括LeetCode、CodeFoce、CCF等
天才程序YUAN
威信:1947099691|机器学习与物联网|CSDN博客专家|持续创作者|实用干货
展开
-
CCF 201803-1 跳一跳
代码的优美性 试题编号: 201803-1 试题名称: 跳一跳 时间限制: 1.0s 内存限制: 256.0MB 问题描述: 问题描述 近来,跳一跳这款小游戏风靡全国,受到不少玩家的喜爱。 简化后的跳一跳规则如下:玩家每次从当前方块跳到下一个方块,如果没有跳到下一个方块上则游戏结束。 如果跳到了方块上,但没有跳到方块的中心则获得1分;跳到方块中心时,若...原创 2018-09-15 20:48:44 · 840 阅读 · 0 评论 -
(力扣)206. 反转链表
题目解题结果解题思路:头插法新建一个空链表,通过头插法插入解题代码class Solution { public ListNode reverseList(ListNode head) { ListNode pre = null; ListNode cur = head; while(cur != null){...原创 2020-02-22 14:57:57 · 970 阅读 · 0 评论 -
(力扣)198. 打家劫舍
题目解题结果解题思路:动态规划题中提到“最高金额”,即求最优解代价。贪心策略和动态规划都可用于求解最优解问题。此问题是动态规划问题。定义最优解代价,题目已给出:“盗取金额总数”,dp[i]表示前i个房屋可获取的金额。定义最优解结构如果dp[i-1]不包括最末尾房屋,则直接加上第i个房屋的金额(nums[i-1]),dp[i] = dp[i-1] + nums[i-1];否则...原创 2020-02-19 18:32:33 · 1053 阅读 · 1 评论 -
(力扣)991. 坏了的计算器
解题思路:逆向思维若X >= Y,则只有递减操作可以执行,返回X- Y;若X<Y,则采用逆向思维。正向思维是需要考虑先递减1,再乘以2,难以确定是在X= Y/2、Y/4……中的什么时刻递减1。以小化大是困难的逆向思维可以一直除以2(Y/=2),直至Y小于X,再执行加1操作以大化小是容易的使用递归结构实现,当Y>X时,每次只考虑最后一步,如果Y为偶数,则到...原创 2020-02-19 14:42:39 · 958 阅读 · 0 评论 -
(力扣)72. 编辑距离
解题思路动态规划:dp[i][j] 代表 word1 到 i 位置转换成 word2 到 j 位置需要最少步数所以,当 word1[i] == word2[j],dp[i][j] = dp[i-1][j-1];当 word1[i] != word2[j],dp[i][j] = min(dp[i-1][j-1], dp[i-1][j], dp[i][j-1]) + 1其中,dp[i-1...原创 2020-02-17 11:03:03 · 955 阅读 · 1 评论 -
(力扣)236.二叉树的最近公共祖先
解题思路从根节点开始遍历树。在找到 p 和 q 之前,将父指针存储在Map<TreeNode,TreeNode> fatherMap。使用fatherMap获得 p 的所有祖先,并添加到一个称为祖先的集合中。同样遍历节点 q 的祖先。如果祖先存在于为 p 设置的祖先中,这意味着这是 p 和 q 之间的最近共同祖先(同时向上遍历) 算法效率有点低,有时间再改进吧解题代码...原创 2020-02-01 13:09:00 · 1123 阅读 · 0 评论 -
(CODEFORCE)Problem-1277A. Happy Birthday, Polycarp!
import java.util.Scanner;/** * Main.注意考虑到边界情况与特殊情况 * @author : cxc **/public class Main { public static int getTennum(int num,int len){ String numstr = num+""; String mynum = ""; ...原创 2019-12-20 12:53:48 · 971 阅读 · 0 评论 -
CCF201903-1 小中大(100分)
代码:import java.util.Scanner;/** * Main.注意考虑到边界情况与特殊情况 * @author : cxc **/public class Main { public static void main(String[] args) { Scanner myin = new Scanner(System.in,"utf-8"); ...原创 2019-12-13 19:29:02 · 935 阅读 · 0 评论 -
CCF201803-3 URL映射(20分)
import java.util.Scanner;import java.util.regex.Matcher;import java.util.regex.Pattern;/** * Main.注意考虑到边界情况与特殊情况 * @author : cxc **/public class Main { /** * 解析规则,将规则转换成正则表达式 * 匹配规则...原创 2019-12-13 16:22:52 · 860 阅读 · 0 评论 -
CCF201909-2 小明种苹果(续)(java)
问题链接:CCF201909-2 小明种苹果(续)提交结果:(在超时的边缘……)注意:若15行条件为badtreeorder[i-2] == badtreeorder[i-1]&& badtreeorder[i-1] == badtreeorder[i],若为若条件设为badtreeorder[i] == badtreeorder[i+1]&& bad...原创 2019-12-10 23:02:44 · 1161 阅读 · 0 评论 -
CCF201909-1 小明种苹果(java+100分)
题目描述小明在他的果园里种了一些苹果树。为了保证苹果的品质,在种植过程中要进行若干轮疏果操作,也就是提前从树上把不好的苹果去掉。第一轮疏果操作开始前,小明记录了每棵树上苹果的个数。每轮疏果操作时,小明都记录了从每棵树上去掉的苹果个数。在最后一轮疏果操作结束后,请帮助小明统计相关的信息。输入格式从标准输入读入数据。第1行包含两个正整数N和M,分别表示苹果树的棵数和疏果操作的轮数。第1+i行...原创 2019-12-10 09:58:33 · 1698 阅读 · 0 评论 -
CCF-CSP认证历年真题解(包含Java与C/C++)
写博客的原因是阅读了CCF-CSP认证历年真题解(C/C++),准备CCF的同时想写一个java版CCF每题要获得100分,仅仅使用原题的样例来测试是不够的,需要自己设计一些样例,并且需要考虑特殊的边界条件。目录2019.09 第17次java题解C/C++题解2019.03 第16次C/C++题解2018.12 第15次C/C++题解2018.09 第14次C/C++题解2018.03 ...原创 2019-12-10 10:21:29 · 3441 阅读 · 1 评论 -
(CODEFORCE)399A - Pages
忽略末尾为p的情况import java.util.Scanner;/** * Main.注意考虑到边界情况与特殊情况 * @author : cxc **/public class Main { //忽略末尾为p的情况 public static void main(String[] args) { Scanner in = new Scanner(Syste...原创 2019-12-18 01:22:57 · 904 阅读 · 0 评论 -
(CODEFORCE)393A Nineteen cf 题解
开始出错原因:对n计算错误,误以为1+(letter[‘n’ - ‘a’]-1) / 2,应该是(letter[‘n’ - ‘a’]-1) / 2;import java.util.Scanner;/** * Main.注意考虑到边界情况与特殊情况 * @author : cxc **/public class Main { public static void main(...原创 2019-12-16 22:08:43 · 932 阅读 · 0 评论 -
(CODEFORCE)A. Silent Classroom
CodeForces - 1166A代码:import java.util.HashMap;import java.util.Map;import java.util.Scanner;public class Main{ //// public static void main(String[] args) { Scanner in1 = new Sca...原创 2019-08-02 17:32:55 · 888 阅读 · 0 评论