暂时未有相关云产品技术能力~
暂无个人介绍
E. AC Challenge 题目描述 输入 输出 样例输入 样例输出 提示 题意: A. An Olympian Math Problem G. Lpl and Energy-saving Lamps 题目描述 输入 输出 样例输入 样例输出 提示 ac_code:
题意: 一共有n头奶牛,每头奶牛挤奶都会消耗一定的时间ti 然后有m 个关系,u − v,其含义是 u 必须在v 之前挤奶,而且有足够的人手多线程挤奶,问为这n 头奶牛挤完奶一共需要消耗多长时间
题目描述 After spending so much time around his cows, Farmer John has started to understand their language. Moreover, he notices that among his N cows (2 ≤ N ≤ 1000 ), some always tell the truth while others always lie.
题目描述 All boring tree-shaped lands are alike, while all exciting tree-shaped lands are exciting in their own special ways.What makes Treeland more exciting than the other tree-shaped lands are the raddest radio hosts in the local area: Root and Leaf.
A Quality-Adjusted Life-Year B Gwen’s Gift C Forest for the Trees D H-Index E Driving Lanes F Treasure Spotting G Neighborhood Watch H Small Schedule I Mr. Plow King J Rainbow Road Race
题目描述 Bobo 有一个 n 个点,m 条边的 有向无环图 (即对于任意点 v,不存在从点 v 开始、点 v 结束的路径)。 为了方便,点用 1 , 2 , … , n编号。 设count(x,y) 表示点 x 到点 y 不同的路径数量(规定count(x,x)=0,Bobo 想知道 ∑i=1n∑j=1ncount(i,j)⋅ai⋅bj 除以( 1 0 9 + 7 ) 的余数。 其中,a i , b j 是给定的数列。
有n个点,其中,每个点给出位置坐标( x , y ) 以及高度z ,两点之间的距离为两点之间的欧几里得距离 两点之间建立一条路的代价为两点之间的高度差,问将n 个点联通的情况下,求出最大的cost/dis
题目描述 In a postfix expression, operators follow their operands. For example, [ 5 2 * ] is interpreted as 5 * 2. If there are multiple operators, each operator appears after its last operand. Here are more examples, showing how postfix compares to parenthesized expressions:
题目背景 无聊的 YYB 总喜欢搞出一些正常人无法搞出的东西。有一天,无聊的 YYB 想出了一道无聊的题:无聊的数列。。。
题意: 给出一个长度为n nn的序列,问有多少种方案数使得挑选四个位置满足ABBA这种情况 即 1 ≤ a < b < c < d ≤ n 1 \leq a < b < c < d \leq n1≤a<b<c<d≤n,且满足 ① n u m [ a ] = n u m [ d ] n u m [ b ] = n u m [ c ] num[a] = num[d] \ \ num[b] = num[c]num[a]=num[d] num[b]=num[c] ② n u m [ a ] ≠ n u m [ b ] num[a] \neq num[b]num[a]
题意: 有n堆石子,后手可以在游戏开始之前挪走不超过d堆,然后问后手赢得游戏的方案数量 % 1e9 + 7 思路: 先求出所有数的亦或和 设d p [ i ] [ j ] [ k ] dp[i][j][k]dp[i][j][k]为前 i ii 堆石子挪走 j jj 堆,并且亦或和为 k kk 的方案数 然后进行dp
题目描述 There’s a new art installation in town, and it inspires you… to play a childish game. The art installation consists of a floor with an n×n matrix of square tiles. Each tile holds a single number from 1 to k. You want to play hopscotch on it.
题意: 给定一个n ∗ n n * nn∗n的矩阵,其中在X XX上一定不可以放置船,而在O OO上面一定要放置船,在′ . ′ '.' 上面可以放置船,也可以不放,问将以下m mm艘船,大小均为1 ∗ x 1 * x1∗x,放置在矩阵中的方案数量 思路: 类似经典的八皇后问题, 首先将所有的m个都成功放置之后,并且所有的O均已成功放置船艘,此时的方案书就应该 + 1 注意船的形状一共有两种情况:横着和竖着,但是对于1 * 1的情况来说就只有一种状态,这里要特判掉 我们用j u d g e ( ) judge()judge()函数来判断是否能够是否可以放置该船,
题意: 给出一个数n nn,构造出一个数列 a 1 . . . a m a_1 ... a_ma 1 ...a m ,使得所有数之和a 1 + . . . + a m a_1 + ... + a_ma 1 +...+a m 为n nn,并且还要使得a 1 ∣ . . . ∣ a m a_1 | ... | a_ma 1 ∣...∣a m 尽可能的小,问最小的o r oror运算之后的值是多少 首先可以看到题目的数据范围很大,考虑使用Java大数B i g I n t e g e r BigIntegerBigInteger
Java大浮点数BigDecimal的精度可以认为是无限的 BigDecimal 里面的pow()的复杂度是快速幂的复杂度log BigDecimal.pow() 里面的参数是一个整数, BigDecimal的构造方式和BigInteger 类似 BigDecimal 保留小数的方法比较多,一般情况下下保留到小数点后x(int)位的情况下,可以调用方法setScale 在多次操作之后,数据的长度可能比较大,所以说运算起来就会减慢速度,所以说可能会导致TLE
题意: 给出n个数,如果两数之和a i + a j a_i+a_ja i +a j (i ≠ j i \neq ji =j)为素数,那么这两个数的下标组成的集合{ i , j } {\{i,j}\}{i,j} 问最多挑选k个这样的集合,集合最大的大小是多少 思路: 将给出的n个数进行暴力两两求和,看两数之和是否为素数,将能够构成素数的两个数的下标连一条边 开始将match数组标记为− 1 -1−1,如果能够构成素数,那么将这个数标记为0 00 然后进行二分图最大匹配,如果说匹配的个数 ≥ k \ge k≥k 那么答案就是k ∗ 2 k*2k∗2
题意: 用 < 2k的数填充到长度为n的数组中,要使得数组中所有数& >= ^,问方案数 显然,当k == 1的时候,答案为1,只有当所有的数全为1的情况才可以满足题意 对于其他的情况{ 用小于2k的数进行填充,那么说明填充的数字的二进制位数最多可以有k kk位, 从数的个数的角度来说,奇数个1^ 之后的结果是1,偶数个1^ 之后的结果是0,而对于0来讲,不管多少个0,^起来结果都是0 只要有一个0,那么说这一位上&之后就是0,而为了让^为0,那么只能够选择偶数个1 如果某一位上&为1,那么^为1的情况需要讨论n的奇偶性
题目描述 如题,给出一个网络图,以及其源点和汇点,求出其网络最大流。 输入格式 第一行包含四个正整数 n nn,m mm,s ss,t tt,分别表示点的个数、有向边的个数、源点序号、汇点序号。 接下来M行每行包含三个正整数 ui ,vi,wi ,表示第 i 条有向边从 ui 出发,到达 vi,边权为 wi即该边最大流量为 wi)。 输出格式 一行,包含一个正整数,即为该网络的最大流。
题目描述 如题,给出一个网络图,以及其源点和汇点,求出其网络最大流。 输入格式 第一行包含四个正整数 n nn,m mm,s ss,t tt,分别表示点的个数、有向边的个数、源点序号、汇点序号。 接下来M行每行包含三个正整数 ui ,vi,wi ,表示第 i 条有向边从 ui 出发,到达 vi,边权为 wi即该边最大流量为 wi)。 输出格式 一行,包含一个正整数,即为该网络的最大流。
第六种:交互题的spj 第七种[带有testlib.h]的另一种解决方式 第八种 使用validation.h的BAPC2018(较难)
浅谈oj平台 spj 使用 | 修改问题 首先: 参数对应 返回值 代码提交 几种spj 第一种:简单的一类特判 第二种:多组输入的特判 第三种:需要判断特殊情况[impossible] 第四种:带有[testlib.h]的spj 第五种:GCPC [German Collegiate Programming Contest] 类spj
题目描述 给出一个包含 n nn 个点和 m mm 条边的有向图(下面称其为网络) G = ( V , E ) G=(V,E)G=(V,E),该网络上所有点分别编号为 1 ∼ n 1 \sim n1∼n,所有边分别编号为 1 ∼ m 1\sim m1∼m,其中该网络的源点为 s ss,汇点为t tt,网络上的每条边 ( u , v ) (u,v)(u,v) 都有一个流量限制 w ( u , v ) w(u,v)w(u,v)和单位流量的费用 c ( u , v ) c(u,v)c(u,v)。
题目描述 如题,给出一个网络图,以及其源点和汇点,求出其网络最大流。 输入格式 第一行包含四个正整数 n nn,m mm,s ss,t tt,分别表示点的个数、有向边的个数、源点序号、汇点序号。 接下来M行每行包含三个正整数 ui ,vi,wi ,表示第 i 条有向边从 ui 出发,到达 vi,边权为 wi即该边最大流量为 wi)。 输出格式 一行,包含一个正整数,即为该网络的最大流。
题意: 有一棵树,n − 1 n-1n−1条边中,两两之间都有一个边权,可以从任意一个点出发,最多经过每一条边k次,只有第一次经过的时候才会算上边权的贡献,问最大的贡献是多少? 其实这道题是非常简单的,是比较模板的题 首先我们考虑,当k ⩾ 2 k \geqslant 2k⩾2的情况,我们可以将整棵树遍历过一遍,所以说最大贡献便是所有的边权和 当k = = 1 k == 1k==1的情况下,其实就是树的直径,树的直径上,满足贡献最大
给出 n 个字符串,对于每个 i ,找到最少需要多少个前缀,将第 1 -> i 个字符串的前缀包含在内,不包含第 i + 1 -> n 个字符串的前缀 首先暴力的字典树解法(由于内存的加强,并不能通过该题) 压缩Trie 是可以的
题目描述 小 Y 是一个爱好旅行的 OIer。她来到 X 国,打算将各个城市都玩一遍。 小Y了解到, X国的 n 个城市之间有 m 条双向道路。每条双向道路连接两个城市。 不存在两条连接同一对城市的道路,也不存在一条连接一个城市和它本身的道路。并且, 从任意一个城市出发,通过这些道路都可以到达任意一个其他城市。小 Y 只能通过这些 道路从一个城市前往另一个城市。
题意: n个路口,m条街道,每条街道都是有向的 并且这m条街道open a秒 close b秒(循环往复),自己的车通过这条道路需要t秒 可以从路口等待某一条道路open,必须在道路close 之前通过,且必须在另一条道路open的时候进入 问能否从s点到达t点,如果不能,输出-1,如果能输出最短的时间 细节的地方加在了代码里,在建图的过程中,如果说a > t,那么说这条路无论如何是走不过去的,所以干脆直接不建边
F. 异象石 难度适中 G. 暗的连锁 难度适中 H. 点的距离 板子题 l. 晨跑 大水题 J. 货物运输 较简单 K. 数三角形 组合数学简单题
细节的地方慢慢补充,欢迎提出问题,私聊/留言均可 A. 跳跳棋 较难 B. 聚会 板子题 C. 祖孙询问 板子题 D. Dis 板子题 E. 次小生成树(严格次小生成树) 难
题意: 找到最大的一个集合,使得集合内所有元素 % m(>=2) 问最大的集合大小
给定一个长度为n的序列a[],每个元素1 <= a[i] <= n, 1 <= n <= 1e5 有两种操作: 1: 将区间[l,r]内的每个元素向后循环一位,区间内最后一个元素替换到第一个元素 2: 询问区间[l,r] 内某个数val的出现次数 对于操作1: 在修改的时候,对每一个块可以维护一个双端队列,每次在移位的过程中{ 1. 最左端的块最右边的元素过渡到下一个块的首部,最左端l处加入原始在r处的元素 2. 最右端的块的首部加入前一个块的最后一个元素,最右端的一个元素(原始在r处)加入到1.中描述的l处 3. 中间的整块首部加入前一个块的最后元素,后部pop出最后一个元素加入到下一个
给定一个长度为n的序列,m个询问 每次给出一个区间,查找区间内x*cnt[x] 的最大值 由于题目的限制,下一次询问的区间会受到上一次查询结果的影响,所以必须要进行强制在线处理 首先将数列分成ceil(n/blk+1) 块,对于询问中b[l] + 1 -> b[r] - 1这一块中的答案我们可以通过预处理得到,这里的写法类似数列分块入门中的第九题查询区间众数 然后需要做的就是暴力计算左右两边的小块的贡献 在这个数据范围下,先进行离散化处理比较好,对于查询的结果可能比较大,所以数据类型上一定要开long long
题意: 某字符串由m o 两个字符构成 而且构成的字符串为前一个字符串 + m + o * (i+2) + 前一个字符串 *(i+2)指的是数量 问字符串第n个字符是什么 思路: 在从一个字符串构成下一个字符串的时候,是有一定的规律的,所以我们可以很轻松地找到规律 然后就可以递归地找,满足规律的时候直接输出
题意: 给出n,两个数列a[1] -> a[n],b[1] -> b[n] 问有多少个x,可以使得在我们任意一种方式排列b[]之后,有a[i] ^ b[i] == x (1 <= i <= n) 思路: 首先我们可以确定所有的答案一定在a[1] ^ b[i] (1 <= i <= n)之内,所以我们只需要将这些个x的解空间单独放到数组c[]里,然后遍历x的解空间c[],将c[i] ^ a[i]的结果记录在d[]里面,然后判断b[],d[]是否完全相同即可,如果完全相同,就可以记录答案,注意最终答案要进行去重
入门 6-单点插入-单点查询 入门 7-区间乘法-区间加法-单点查询 入门 8-区间修改-区间查询 入门 9-区间查询众数
数列分块入门 入门 1-区间加法-单点查询 入门 2-区间加法-区间查询 入门 3-区间加法-单点查询 入门 4-区间加法-区间查询 入门 5-区间开方-区间查询
题意: 将2*n个人分成两部分,每部分都有n个人 而且每个人只能属于一个组,问按照给出的算式得到的竞争力最大值是多少
input output 给出n,m从n ^ 0 -> n ^ m中最小为出现的非负整数
意思是有n头牛,现在有k张优惠券以及m元,每头牛有一个原始价格和折扣价格,问最多能买多少牛 一开始的方法很简单,由于题目里面说了折扣价格一定比原始价格便宜,所以说首先按照折扣价格从小大大进行排序,将前k个牛的花费看作是折扣之后的价格,而将后面的花费看作是原始价格,然后重新将价值从小到大进行排序,尽可能的多选
题意: 给出一个长度为n的数组,有m个询问,每次询问给出一个区间,问这个区间内有多少个数x恰好出现x次
有n个点m条边,每一个点有两个属性,在这个点上的时候要至少有A元,然后要在这个点上支付B元,可以选择在任意时候支付 求最少要携带多少元,才能够将所有的点都支付一遍
小C养了一些很可爱的兔子。 有一天,小C突然发现兔子们都是严格按照伟大的数学家 斐波那契 提出的模型来进行繁衍:一对兔子从出生后第二个月起,每个月刚开始的时候都会产下一对小兔子。我们假定,在整个过程中兔子不会出现任何意外。 小C把兔子按出生顺序,把兔子们从1开始标号,并且小C的兔子都是1号兔子和1号兔子的后代。如果某两对兔子是同时出生的,那么小C会将父母标号更小的一对优先标号。如果我们把这种关系用图画下来,前六个月大概就是这样的:
本题是一个spj的问题 题意是给定一个完全图,包含了n个节点,每次可以在这个图中选择一个生成树,然后将该生成树的所有边都删除,然后得到一个新图,然后再从新的图中重复上述操作,问最多可以操作多少次,对于每一次操作,输出选择的生成树中的所有边(n-1行) 在lc哥的图中稍加改造,做成这个样子: 图中有6个点,将点按照0 -> 5编号
Array Time Limit: 15000/8000 MS (Java/Others) Memory Limit: 524288/524288 K (Java/Others) Total Submission(s): 965 Accepted Submission(s): 312 Problem Description Given an integer array a[1…n].
get函数是求出将黑色的边权加上一个值x之后的一个花费,我们会这个函数处理出x=-1000->1000的所有情况,然后将信息储存在save中,然后在询问的时候,直接遍历save集合,遇见满足情况的便直接输出,否则输出-1,虽然没有-1的情况/doge
题意: 给出一个字符串,长度为n,而且都是又a,b,c三个字符构成的,然后有m个询问 每个询问给出l r,问要想这个区间内不存在回文子串,至少要改多少个字符 结论: 一共会有六种情况
2021-08-03训练记录 Magic Line String Invasion A*B*C 小biu放牛 小A的游戏 A^ B ^ C
样例输入: 样例输出 样例输入: 样例输出
动态规划简单题 我们设置二维数组dp[size][2],其中dp[i][0]代表第i 天不持有股票的最大价值 其中dp[i][1]代表第i天持有股票的最大价值 当天持有股票可以从前一天持有股票和前一天不持有股票现今买入转换得来 当天不持有股票可以从前一天不持有和前一天持有现今卖出得到
Java大数BigInteger-用法记录 提交代码 使用方式 构造一个对象 加 add 减 subtract 乘 multiply 除 divide gcd 最大公约数 lcm 最小公倍数 mod % pow ^次方 abs 绝对值 开方sqrt modPow 次方取余 equals判断是否相等 compareTo 比较大小 常用的就上面这些啦