
ACM
KroneX
ACM退役选手,热爱优雅、高效、有创造力的技术,本博客记录题解,编程tips,计算机相关知识,心得等。
展开
-
【leetcode】57. 插入区间(insert-interval)(模拟)[困难]
链接https://leetcode-cn.com/problems/insert-interval/耗时解题:2 h 17 min题解:8 min题意给出一个无重叠的 ,按照区间起始端点排序的区间列表。在列表中插入一个新的区间,你需要确保列表中的区间仍然有序且不重叠(如果有必要的话,可以合并区间)。思路分为四种情况:在头部插入在结尾插入在中间插入与某些现存区间合并解决:判断是否为空,新增区间右端点是否小于列表第一个区间左端点。不在中间插入或合并,就在结尾插入在现存区原创 2020-11-04 11:58:53 · 118 阅读 · 0 评论 -
【leetcode】136. 只出现一次的数字(Single Number)(位运算)[简单]
链接https://leetcode-cn.com/problems/single-number/题意给定一个非空整数数组,除了某个元素只出现一次以外,其余每个元素均出现两次。找出那个只出现了一次的元素。说明:你的算法应该具有线性时间复杂度。 你可以不使用额外空间来实现吗?思路标签位运算,常见位运算有 与(&)、或(|)、取反(~)、异或(^)……对,就是 异或。(手动狗头)...原创 2019-10-16 15:51:32 · 185 阅读 · 0 评论 -
【leetcode】114. 二叉树展开为链表(Flatten Binary Tree to Linked List)(DFS)[中等]
链接https://leetcode-cn.com/problems/flatten-binary-tree-to-linked-list/题意给定一个二叉树,原地将它展开为链表(将二叉树以先序遍历的顺序把每个节点依次存储在右子树)。思路如果当前节点的左子树不为空,则把 当前节点的右子树 放在 左子树的最右子节点的右子树 上,然后把当前节点的左子树放到右子树上,并把左子树置空。...原创 2019-10-16 11:04:43 · 175 阅读 · 0 评论 -
2017icpc沈阳站_M_HDU-6229_(思维)
链接: http://acm.hdu.edu.cn/showproblem.php?pid=6229题意: 给一个矩阵上面有一些坏点,坏点不能走,起点是 (0,0)(0, 0)(0,0) ,保证所有可行点联通。在每个点走向其他可走方向(上下左右)和待在原地的概率是相同的。问无限次后,在位置 {(x,y)∣x+y≥N−1}\{(x, y)|x + y ≥ N - 1 \}{(x,y)∣x+y≥N−...原创 2018-10-14 01:00:56 · 335 阅读 · 0 评论 -
计算几何 (POJ1127 、 )
计算几何1. 判断线段是否相交1. 判断线段是否相交在不需求出交点,只需判断两条线段是否相交,可以使用 1.快速排斥实验1.快速排斥实验1.快速排斥实验 和 2.跨立实验2.跨立实验2.跨立实验 解决。参考链接:https://blog.youkuaiyun.com/tengchongwei/article/details/72922056需要求出交点的情况可以先判断是否平行。如果不平行,求直线 L...原创 2018-10-08 23:04:36 · 283 阅读 · 0 评论 -
2017icpc沈阳站_M_HDU-6229_(思维)
链接: http://acm.hdu.edu.cn/showproblem.php?pid=6229题意: 给一个矩阵上面有一些坏点,坏点不能走,起点是 (0,0)(0, 0)(0,0) ,保证所有可行点联通。在每个点走向其他可走方向(上下左右)和待在原地的概率是相同的。问无限次后,在位置 {(x,y)∣x+y≥N−1}\{(x, y)|x + y ≥ N - 1 \}{(x,y)∣x+y≥N−...原创 2018-10-29 22:11:09 · 249 阅读 · 0 评论 -
【Java】程序设计竞赛(Java 方向)
Java高精度头文件import java.io.*;import java.math.*;import java.util.*;import java.text.*;输入:Scanner in = new Scanner (new BufferedInputStream(System.in)); // 加Buffer可能会快一些while(in.hasNext()) /...原创 2018-10-29 22:46:08 · 1217 阅读 · 0 评论 -
HDU_3089_约瑟夫环快速递推
HDU_3089_约瑟夫环快速递推链接:http://acm.hdu.edu.cn/showproblem.php?pid=3089题意:约瑟夫环问题。给出 nnn 个人,从 111 到 nnn 编号,nnn 个人围成一个圈。第一个人从 111 开始报数,数到 kkk 的人杀掉,然后从下一个人开始重新报数,如此循环,直到只剩下一个人,问幸存的人的编号。思路:传统约瑟夫环问题:可以这么想...原创 2018-11-05 22:24:17 · 538 阅读 · 0 评论 -
【数据结构】排序算法
#include <bits/stdc++.h>using namespace std;//不稳定: 快排、堆排、选择、希尔template<typename T, int n>// 1、冒泡排序(Bubble Sort)时间复杂度 O(n^2) 空间复杂度 O(1)void BubbleSort(T (&arr)[n]) { for (int i ...原创 2019-08-07 20:51:31 · 275 阅读 · 0 评论 -
【数据结构】POJ 1985 Cow Marathon(树的直径)
链接:http://poj.org/problem?id=1985题意:有 nnn 个农场和 mmm 条路,以及每条路的方向(方向在这道题中没有用)。并且每对农场之间只有一条路可达,即这是一个树。求最长的一条路,也就是两点间的最大距离,即树的直径。思路:树的直径: 树的最长简单路(树中所有路径的最大值)。求解方法: 跑两遍 BFS。第一遍 BFS 先任选一个起点,BFS 找到最长路的终...原创 2019-08-12 15:09:25 · 257 阅读 · 0 评论 -
【PAT(Advanced Level) Practice】1010 Radix(二分)
链接:https://pintia.cn/problem-sets/994805342720868352/problems/994805507225665536题意:有两个数 N1,N2N1,N2N1,N2,已知其中一个数的基数 radixradixradix,问若要使 N1==N2N1 == N2N1==N2,那么另一个数的基数是多少。思路:假设:已知 N1N1N1 的基数我刚开始的...原创 2019-09-20 21:43:21 · 170 阅读 · 1 评论 -
Codeforces Round #513 by Barcelona Bootcamp (rated, Div. 1 + Div. 2) (A B C)
链接: http://codeforces.com/contest/1060Codeforces Round #513A. Phone Numbers(水题)B. Maximum Sum of Digits(打表找规律、思维贪心)C. Maximum Subrectangle(思维卡时间)A. Phone Numbers(水题)题意: 第一位是字符 ′8′&#x27;8&#x...原创 2018-10-05 01:40:48 · 341 阅读 · 0 评论 -
牛客国庆集训派对Day4(A D I J)
链接: https://www.nowcoder.com/acm/contest/204#question牛客国庆集训派对Day1A. 深度学习(思维水题)D. 最小生成树(思维)I. 连通块计数(组合数学)J. 寻找复读机(模拟水题)A. 深度学习(思维水题)题意: nnn 组训练数据,每次训练从 nnn 组中随机选出 BBB 组,花费 BBB 秒,nnn 组数据都被选中过就结束。...原创 2018-10-04 23:00:27 · 393 阅读 · 0 评论 -
次短路
次短路概念:次短路是相对于最短路的,简单来说就是第二短的路径。方法: dijkstradijkstradijkstra 找最短路的同时,维护一个次短路数组(dist2[]dist2[]dist2[])。当 (到达目的节点的最短路) &amp;amp;amp;gt;&amp;amp;amp;gt;&amp;amp;gt; (从队列中取出的值 + 当前点到目的点的距离)即 dist[v]&amp;amp;amp;gt;d+E[now][i]原创 2018-10-12 11:15:29 · 177 阅读 · 0 评论 -
贪心算法
算法导引: 问题:有1元、5元、10元、100元、500元的硬币(假设所有面值硬币都足够)现在要找给顾客620元,最少需要多少枚硬币?(改编自挑战程序设计竞赛) 显然使用一个500的,一个100的,两个20的最优。得出这一结论我们使用了这样的贪心算法,即首先找出一个面值不超过620的最大硬币,即500,然后从620中减去500,剩下120;再选出一个面值不超过120的最大硬币,即...原创 2018-03-12 23:47:54 · 418 阅读 · 0 评论 -
浙江省赛2015 _ G - Lunch Time -> ZOJ - 3875
水题 这道题比赛当时没有做出来。原因是 ends ,C++对ends的处理是在缓冲区插入 ‘\0’ 然后刷新,而不是空格,能输出空格是因为Windows对 ‘\0’ 默认的处理方式是输出一个空格,而linux下则不会有什么输出。即windows和linux对’\0’的处理方式不同,而本次测评OS为Linux,所以WA。以后 注意用 ” ” 。 题目:ZOJ 3878 The ...原创 2018-03-11 12:28:46 · 283 阅读 · 0 评论 -
浙江省赛2015 _ J - Convert QWERTY to Dvorak -> ZOJ 3878
模拟水题 题目:ZOJ 3878 Edward, a poor copy typist, is a user of the Dvorak Layout. But now he has only a QWERTY Keyboard with a broken Caps Lock key, so Edward never presses the broken Caps Lock key. L...原创 2018-03-11 12:08:15 · 277 阅读 · 0 评论 -
浙江省赛2015 _ L _ ZOJ 3880
水题 题目:ZOJ 3880 There is a popular multiplayer online battle arena game called Demacia of the Ancients. There are lots of professional teams playing this game. A team will be approved as Level K i...原创 2018-03-11 11:39:24 · 215 阅读 · 0 评论 -
HDU 2177 取(2堆)石子游戏题解
知识:博弈论 威佐夫博弈(Wythoff Game) 题目:HDU 2177 链接 有两堆石子,数量任意,可以不同。游戏开始由两个人轮流取石子。游戏规定,每次有两种不同的取法,一是可以在任意的一堆中取走任意多的石子;二是可以在两堆中同时取走相同数量的石子。最后把石子全部取完者为胜者。现在给出初始的两堆石子的数目,如果轮到你先取,假设双方都采取最好的策略,问最后你是胜者还是败者。如果你胜,你第1原创 2017-09-12 22:28:45 · 1663 阅读 · 0 评论 -
CodeForces - 225B题解
知识:无 题目:CodeForces - 225B链接 Numbers k-bonacci (k is integer, k > 1) are a generalization of Fibonacci numbers and are determined as follows: - F(k, n) = 0, for integer n, 1 ≤ n < k; - F(k, k原创 2017-08-26 17:24:14 · 408 阅读 · 0 评论 -
Uva-11768 Lattice Point or Not题解
题目:题目链接 Now a days a very common problem is:“The coordinate of two points in Cartesian coordinate system is (200, 300) and (4000, 5000).If these two points are connected we get a line segment. How ma原创 2017-08-23 20:05:52 · 371 阅读 · 0 评论 -
HDU 1002 Java大数
题意很简单输出aaa原创 2018-06-06 22:45:26 · 188 阅读 · 0 评论 -
牛客国庆集训派对Day1(A C E L)
牛客国庆集训派对Day1A. Tobaku Mokushiroku KaijiC. UtawarerumonoE. Eustia of the Tarnished WingsL. New Game!A. Tobaku Mokushiroku Kaiji题意: 给出剪刀石头布卡牌的数量,问其中一个人最多能赢多少次。#include &amp;amp;amp;lt;bits/stdc++.h&amp;amp;amp;gt;using ...原创 2018-10-02 21:24:39 · 405 阅读 · 0 评论 -
牛客国庆集训派对Day2(A F H)
链接: https://www.nowcoder.com/acm/contest/202#question牛客国庆集训派对Day2A. 矩阵乘法F. 平衡二叉树H. 卡牌游戏A. 矩阵乘法题意: 给两个矩阵 A,BA, BA,B,AAA 是十进制矩阵,BBB 是二进制矩阵,问两个矩阵相乘之后得到的结果矩阵的每个元素的异或和。思路: 因为 BBB 是二进制矩阵,BBB 矩阵最多只有 64 行...原创 2018-10-03 00:16:40 · 554 阅读 · 0 评论 -
CodeForces - 954C - Matrix Walk
坑题 题目:CodeForces - 954C 题意:矩阵的每一元素可以用 Ai, j = y*(i - 1) + j 来表示,(就是二维数组用一维指针表示的方法),给你一个路径序列,问这样的序列能否在前述矩阵中实现。能输出YES和x,y值(x的值不是必须最优),否则输出NO。 坑点:不能站着不动,任意的a[i] != a[i-1];思路:for循环找a数组中有没有相同的元素,有直...原创 2018-03-26 23:49:43 · 290 阅读 · 0 评论