Python
Java
PHP
IOS
Android
Nodejs
JavaScript
Html5
Windows
Ubuntu
Linux
每日一题:整齐的数组
整齐的数组 题目 Daimayuan Online Judge 每一次可以选择一个ai减去k 可以进行若干次操作 使得所有数变相同 说明跟顺序无关 可以从小到大排个序 k大于等于1 说明了每个数只能变小不能变大 那么每个数只能变得和最小的那
每日一题(代码源)
算法
c
每日一题:路径计数
路径计数 题目 Daimayuan Online Judge f i j 表示从左上角走到 i j 的方案数 状态转移 i j 由 i 1 j 和 i j 1 转移而来 初始状态 得使得f 1 1 为1 所以初始化f 1 0 或者f 0 1
每日一题(代码源)
算法
c
动态规划
每日一题:Alice的德州扑克
Alice的德州扑克 题目 Daimayuan Online Judge 从最大的牌开始判断 如果满足直接输出 return 0 否则就接着判断 一层一层往下判断 AC代码 include
每日一题(代码源)
算法
c
每日一题:走路
走路 题目 Daimayuan Online Judge f i j 表示第i步能否走到第j阶 include
每日一题(代码源)
c
算法
每日一题:01序列
01序列 题目 Daimayuan Online Judge 大致题意是字符串中只有0和1 找出有多少个子串含有k个1 依次记录每个1的下标 枚举每个1 运用乘法原理 比如01010100 找含有2个1的子串 先枚举第一个橙色的1 然后如果
每日一题(代码源)
算法
c
每日一题:简单分数统计
简单分数统计 题目 Daimayuan Online Judge 发现样例输出的是id和成绩 那么就写一个包含这两个变量的结构体来储存它们 另外 再写一个结构体来储存题目名称和分数 目的是使两者联系起来 找到题目名称就能知道对应的分数 AC
每日一题(代码源)
c
结构体
map
每日一题:选数
选数 题目 Daimayuan Online Judge 原本我的思路是 大致题意就是从n个数中选取若干数 使得它们的和mod n等于0 任意选取 无关顺序 是可以跳着选的 也就是对于每一个数 有两种选择 选与不选 于是我想用01背包 但是
每日一题(代码源)
c
前缀和
抽屉原理
每日一题:子串的最大差
子串的最大差 题目 Daimayuan Online Judge 枚举每个子串不现实 肯定会超时 子串1的最大值 子串1的最小值 子串2的最大值 子串2的最小值 即为 子串1的最大值 子串2的最大值 子串1的最小值 子串2的最小值 可以从贡
每日一题(代码源)
算法
c
每日一题:最长因子链
最长因子链 题目 Daimayuan Online Judge 由于要找的数字不用按顺序 所以先给所有数排个序 找最长因子链类似于找最长上升子序列 用动态规划 状态划分 以第i个数结尾的因子链的倒数第二个数可能是第一个数 第二个数 第i 1
每日一题(代码源)
c
算法
动态规划
每日一题:订单编号
订单编号 题目 Daimayuan Online Judge 一开始想用二分答案的 但是后来发现不行 二分答案每找到一个值 就要去掉它的左半边或右半边 但是这里不能去 错误代码 include
每日一题(代码源)
c
算法
数据结构
每日一题:最大和上升子序列
最大和上升子序列 题目 Daimayuan Online Judge 动态规划 和最长上升子序列类似 状态划分 以第i个数结尾的上升子序列的倒数第二个数可能是第一个数 第二个数 第i 1个数 从第一个数开始枚举 以它为结尾 首先f i a
每日一题(代码源)
算法
c
动态规划
每日一题:蒟蒻
蒟蒻 题目 Daimayuan Online Judge map可以一一映射 按键值从小到大排序 AC代码 include
每日一题(代码源)
c
map
算法
每日一题:二分答案
二分答案 题目 Daimayuan Online Judge 首先读入 n 和 k 然后读入序列 a 接下来使用 l 和 r 表示最小值的猜测区间 由于题目中规定了最小值和元素范围 因此我们可以将上界设置为 1e18 下界设置为 1 二分查
每日一题(代码源)
算法
二分答案
c