ICode9

精准搜索请尝试: 精确搜索
  • LCA2022-05-14 15:32:13

    最近公共祖先 LCA dfs向上标记-O(n) 点A先向根搜索并标记,点B再向上搜索,第一次碰到的标记即是lca。 复杂度On,不常用 倍增法-O(logn) dep[i]表示点i的深度 up[i,j]表示从i开始向root方向走2^j步数能走到的位置 若从i开始向根跳2^j次会跳出根则up[i,j]=0,dep[0]=0 具体过程: 【1】先让

  • 学习 枚举类实例和它的匿名内部类实例的区别2022-05-14 13:02:54

    /** * 枚举的实例注意点: * 1 提供类体部分时:该实例其实就是匿名内部类的实例比如SPRING,SUMMER * 2 没有提供类体时该实例才是枚举类的实例.比如AUTUMN,WINTER. * * 查看类的编译,可以证明如上结论无论--->怎样他们都统称为枚举类的实例. * */ //测试: 枚举类实例

  • POJ-2100 Graveyard Design2022-05-13 01:31:15

    Graveyard Design 找到所有的区间,使得区间平方和为n 尺取 注意退出的边界 #include <iostream> #include <cstdio> #include <algorithm> #include <vector> #include <string> #include <queue> #include <functional> #include <map> #include <

  • A. Parsa's Humongous Tree_基础树形dp2022-05-12 00:01:38

    A. Parsa's Humongous Tree_基础树形dp 题目大意 每一个点可以选择[li,ri]中任意整数作为权值,一条边的权值是两点权值之差的绝对值。问整棵树的权值和最大是多少。 思路和代码 哎,当时转移方程我都写好了,脑袋没转过弯来。 首先,做几个样例可以得出每个点的权值必取最大或者最小。 我

  • luogu #6029. 「雅礼集训 2017 Day1」市场2022-05-11 21:34:44

    题面传送门 看到区间除应该能自然想到势能分析。 发现如果线段树上一个区间原来的极差是\(P\),那么一次暴力递归以后极差会变成\(O(\frac{P}{d})\)级别的东西,每次修改操作影响的只有\(O(\log n)\)个区间,所以暴力递归直到全区间相等的复杂度是\(O(n\log n\log W)\)的。 但是你写了一

  • go 常用标准库 时间函数2022-05-11 14:02:43

    go 常用标准库 时间函数 1.1 时间的解析和格式化 #格式TIME_FMT为 2006-01-02 15:04:05 TIME_FMT := "2006-01-02 15:04:05" #获取当前时间 2022-05-11 13:06:16.1146258 +0800 CST m=+0.016836601 now := time.Now() #前面定义TIME_FMT这样的时间格式,然后用now获取到当前时间,用T

  • 「ZJOI2022」众数2022-05-08 18:32:28

    显然只有原序列中的数有可能成为答案 于是离散化之后每个数独立,枚举每个数 这种问题可以考虑根号分治 \(c_i>B\),我们可以枚举中间那一段的颜色变成了什么,复杂度 \(O(n)\) \(c_i\leq B\),如果中间那一段的 \(c_j>B\),可以在 \(j\) 处类似上面那种方法处理一下,否则中间这一段最多 \(B

  • NOI模拟42022-05-07 07:00:18

    最后一个小时脑力大爆发,生生的把规律找出来了,还看出来几个错误的地方,我真是个天才啊哈哈哈哈 遗憾的是,第一题和第二题只会最最最最基础的暴力 但是猜第一题结论的时候属实是给我爽了一会...... T1 魔法球 其实二分是非常显然的,但是check的时候出现了一点点小问题 我一直都在想实际

  • 【考试总结】2022-05-062022-05-06 21:02:15

    魔法球 不难发现是否合法具有单调性,同时保留的一定是权值最大的若干个 通过贪心也可以得到删去球的顺序一定是将待删去的球从大到小操作,并且在保留球之外被加的是最小的若干个 考察一个 \(\Theta(n)\) 判定方式,即从后向前找到每个球的每个权值的出路:被保留的球和没被删去的球,如果

  • 洛谷P1119 灾后重建2022-05-05 22:32:00

    floyd的变形,本质是求从i号顶点到j号顶点只经过前k号点的最短路程。 #include<bits/stdc++.h> using namespace std; const int N = 300,INF = 0x3f3f3f3f; int n,m,qn; int g[N][N],t[N]; void update(int k){ for(int i=0;i<n;i++) for(int j=0;j<n;j++) if(g[i][j]>g

  • python 生成以日期时间命名的目录(应于存放日志/报告文件)2022-05-05 11:01:53

    (FileUtil.py)本模块主要用于获取当前的日期以及时间,用于应于存放日志/报告文件,代码示例如下: 1 import os 2 import time 3 from util import ProjectPathUtil 4 from datetime import datetime 5 6 7 # 输出当前时间格式:年-月-日 8 def currentDate(): 9 date = ti

  • goconvey的使用2022-05-03 16:04:48

    Go单测—goconvey的使用 介绍如何使用goconvey更好地编写单元测试,让单元测试结果更直观、形象。在这一篇中我们将介绍一个人性化的单元测试利器——goconvey。源码地址 一、GoConvey介绍 GoConvey是一个非常非常好用的Go测试框架,它直接与go test集成,提供了很多丰富的断言函数,能够

  • ​ 2-datetime模块2022-05-03 01:32:30

    一、datetime模块 1 2 # datetime模块可以看成是时间加减的模块 import datetime 1 2 # 返回当前时间 print(datetime.datetime.now()) 1 2019-03-07 16:22:14.544130 1 print(datetime.date.fromtimestamp(time.time())) 1 2019-0

  • 基于python的固定间隔时间执行实例解析2022-05-02 17:00:47

    一 概念        datetime的用法如下: import datetime. # 打印当前时间 time1 = datetime.datetime.now() print(time1) # 打印按指定格式排版的时间 time2 = datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S')   二 源码解析   import time import datetime def

  • 合法括号序列和树形结构的互相转化2022-05-01 18:03:29

    一、算法简述 将一棵节点数量为 $n$ 的树转化为一个长度为 $2n$ 的合法括号序列: char bracket[]; int cnt; void dfs(int x) { bracket[++cnt] = '('; for(int i : son(x)) dfs(i); bracket[++cnt] = ')'; } 生成方式:从根节点 dfs 整棵树,从父节点 dfs 到该节点时,给括

  • Python 内置库 -- 科学计算与时间日期2022-04-30 16:01:39

    math函数可以提供很多数学计算的帮助 数字常量: math.pi :圆周率 math.e :自然对数 math.inf :正无穷大,-math.inf 负无穷大 nath.nan:非数字 数论和表示函数:可百度   Python中处理时间的模块: time datetime 常见的时间表示形式: 时间戳 格式化的时间字符串 datetime场用的类: datetime

  • C. Alice and the Cake_思维-堆2022-04-28 21:01:45

    C. Alice and the Cake_思维-堆 1400 题目大意: 一个蛋糕每次可以切一半,如12切成6+6,13切成6+7。现在给一堆无序的数,问是否可能由一个蛋糕切割得来。 思路和代码: 模拟切蛋糕的过程,并且每次切完贪心的去比较切出来的最大蛋糕和给出的最大蛋糕是否匹配。若不匹配就再去切即可。 stri

  • Java基础总结2022-04-27 21:02:34

    java基础强化总结 数组 基本和c语言差不多 java数组的数组长度 stringname.length; 定义数组 // 声明一个 int 数组的变量,数组大小为6 int[] numbers = new int[6]; 函数返回类型包含数组 多用递增 public static void print(String[] names, int[] scores, int be

  • Asp.Net Core WebApi通过BackgroundService执行后台任务2022-04-27 12:34:10

    core 2.0中通过实现IHostedService接口实现后台任务 public interface IHostedService { Task StartAsync(CancellationToken cancellationToken); Task StopAsync(CancellationToken cancellationToken); } core2.1开始,提供了一个继承IHostedServi

  • PAT Advanced Level 1008 Elevator2022-04-26 07:01:07

    原题传送门 1. 问题描述 2. Solution 1、思路分析 题目大意:电梯从0层开始向上,给出该电梯依次按顺序停的楼层数,并且已知上升需要6秒/层,下降需要4秒/层,停下来的话需要停5秒,问走完所有需要停的楼层后总共花了多少时间~ 分析:累加计算输出~now表示现在的层数,a表示将要去的层数,当a > now,

  • [2022天梯赛] 教科书般的亵渎 【记忆化搜索】【剪枝】2022-04-26 01:33:10

    题目描述: $n$张牌每个牌有权值$a_i$,要求选择$k$次,每次让牌的权值减一,使得牌的权值形成从$1$开始的连续整数(不含$0$). $n,k,ai \leq 50$ 分析: 先考虑朴素dp,先将$a_i$排序,$dp[i][S][j]$表示前$i$个数,把$S$这些位填上了,还剩$j$次行动机会的方案数。有 $$dp[i][S][j] -> dp[i+1][S|(1

  • 2022.4.262022-04-26 01:00:24

    AtCoder Beginner Contest 249 A - Jogging 没读好,题面有点问题20分钟后才了改题面。 #include<iostream> #include<cstdio> #include<algorithm> #include<cstring> #include<cmath> using namespace std; typedef long long ll; typedef pair<int,int> p

  • 获取北京时间字符串2022-04-24 14:33:43

    """获取北京时间""" import pytz import time import datetime def get_bj_time(): now_bj_time = datetime.datetime.fromtimestamp(int(time.time()), pytz.timezone('Asia/Shanghai')) now_bj_time = now_bj_time.strftime(&#

  • Leetcode 868 二进制间距2022-04-24 13:03:28

    每日一题 Day2 题目描述 Given a positive integer n, find and return the longest distance between any two adjacent 1's in the binary representation of n. If there are no two adjacent 1's, return 0. 来源:力扣(LeetCode) 链接:https://leetcode-cn.com/problems/binar

  • CF1398F Controversial Rounds 题解2022-04-21 22:31:52

    Post time: 2021-10-29 18:22:46 题面 贡献一个官方题解做法的详细解释。 首先注意到一个贪心的思路,从前往后如果能够使某一段长度 \(=x\) 就一定会使其 \(= x\) 或 \(\geq x\)。 考虑设一个函数 \(f(pos,x)=npos\) 表示当限制长度为 \(x\) 时,从 \(pos\) 这个位置开始往后,第一个

专注分享技术,共同学习,共同进步。侵权联系[admin#icode9.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有