Dawn-K's Blog

「From ashes to the empire」

「软件工程」 UML类图

UML 类图 [toc] 类 分为三部分 类名 属性(可以没有属性) 操作 其中属性和操作都有public(+), private(-),protect(#)三种访问限定标志 举个例子: Student - num : int + Study() : voi...

「CodeNote」 ACW224(二分+树状数组)

谜一样的牛 题意 有n头奶牛,已知它们的身高为 1~n 且各不相同,但不知道每头奶牛的具体身高。 现在这n头奶牛站成一列,已知第i头牛前面有Ai头牛比它低,求每头奶牛的身高。 输入格式 第1行:输入整数n。 第2..n行:每行输入一个整数Ai,第i行表示第i头牛前面有Ai头牛比它低。 (注意:因为第1头牛前面没有牛,所以并没有将它列出) 输出格式 输出包含n行,每行输出一个整数表示...

「CodeNote」 完全背包计数

面试题 08.11. 硬币 lc518 题意 给定数量不限的硬币,币值为25分、10分、5分和1分,编写代码计算n分有几种表示法。(结果可能会很大,你需要将结果模上1000000007) 输入: 0 <= n (总金额) <= 1000000 思路 经典背包方案数问题 硬币数量不限,是完全背包问题,但是这个题是方案数,如果直接按照背包问题的思路进行计算,会导...

「CodeNote」 n的m划分

m划分问题 给出n个物品(完全一致,无法区分),要求分成m组,每一组可空,求划分数(组之间不考虑顺序) dp[i][j]表示j的i划分数 那么我们可以将j的i划分,分为两种类型 每一组都不空 存在某一组或多组空 显然这两个加起来就是 j 的 i 划分的总数,且这两个没有交集,是最优子结构 每一组都不空 我们先考虑每一组都不空的情况(显然有j>=i).既然每...

「CodeNote」 cf1197D(博弈+移动棋子)

[TOC] 题目链接 题目 有n堆石头,第i堆有ai石头。 两人轮流出手。 Tokitsukaze首先移动。玩家在每个回合中选择一个非空堆,并从堆中取出恰好一块石头。 如果某玩家在移动前所有堆都是空的,或者在移走石头后,两个堆(可能是空的)包含相同数量的筹码,则此玩家将输。 假设双方都完全理性,谁将赢得比赛? 题解 引子 此题乍看不好模拟,实际上可以转化为如下问题: 有...

「CodeNote」 CF743C(思维)

题目链接 题目 给你一个n(1<=n<=1e4) ,要求找到三个不相同的正整数,满足 1/x + 1/y + 1/z = 2/n 找不到输出-1 思路 这个是个很好的思维题,小学奥数,如果我们将z=n代入,就得到了 1/x + 1/y = 1/n 其实这样还是不好想,1/x = 1/n - 1/y 我们尝试一下y代入n+1,就发现x正好等于n*(n+1) 如果...

「CodeNote」 CF538B(简单模拟)

题目链接 题目 给你一个数n(1<=n<=1e6) 然后让你使用一些数(这些数的十进制表示里面只能有0或1),使他们的和是n,输出所需的最少的数个数,并且给出一种方案 思路 简单题 n以字符串形式存储,遍历n的每一位,找到最大的数cnt,也就是所需数字的个数 然后遍历字符串cnt遍,每次使用字符串tmp来存储结果,如果s[i]目前不是'0'那么就让tmp对应的位数是1,同时...

「CodeNote」 运算符优先级

==优先级 == 常配合三目运算符以达到简化代码的目的,但是要考虑到这个等号运算符优先级过低,常常发生意料之外的结合,需要多加注意. 1 2 3 4 5 6 7 sum[i] =sum[i-1]; if(command[i]=='R'){ ++sum[i].first; } if(command[i]=='U'){ +...

「CodeNote」 yxcDP分析

闫氏DP分析法 dp的本质: 有限集中的最值问题 两个阶段 化零为整,状态表示(f[i]) 利用集合减少枚举的个数 1.1 集合是什么 1.2 属性是什么min/max/count 化整为零,状态计算 将f[i]划分成多个子集,然后利用子集的结果整理出f[i]的值 2.1 不重复(求数量时不重复,求最大(小)的时候可以重复(比如RMQ问题)...

「Unity」 unity学习笔记

unity 界面模糊问题 通过调整DPI,在属性->兼容性中禁用Windows缩放优化,即可解决 面板 Inspector 属性面板 Project 工程面板 Hierarchy 层级面板(显示场景有哪些物体) Scene 场景面板 Game 游戏面板(可以理解为运行时刻的预览) 创建场景 ctrl+N 创建新场景 场景名字为untitled时表示未保存,ctrl+s保存...