笔记
fujiware_tofu_store
只狼与xcpc双重打铁匠
展开
-
kmp算法(应该算详解吧
kmp算法(acm版)一、如何在模板串P中统计模式串S是否在P中出现过?朴素算法遍历S和P,看P是否包含S时间复杂度O(n*m)二、优化当S匹配P时,若在某一位置j失配,则令S后移N位直至能够匹配。代码如下(示例):for(int i = 1,j = 0;i <= n;i ++ ){ while(j > 0 && (j == n || s[j + 1] != p[i]) j = ne[j]; if(s[j + 1] == p[i]) j ++; if(j =原创 2021-10-27 19:34:23 · 150 阅读 · 0 评论 -
Different Integers 莫队算法
莫队算法莫队算法,用于离线处理l ~ r中的不同元素个数,时间复杂度: O(nn)O(n\sqrt{n})O(nn)其中利用了分块的思想原创 2021-10-02 22:53:18 · 101 阅读 · 0 评论 -
郑州轻工业大学2021新生赛 2785: 贪心的小H
郑州轻工业大学2021新生赛 2785: 贪心的小H题目描述小H是一个考古学家,有一天他发现了海盗的宝藏,但是他只带了一个背包。现在摆在面前的宝物有100多件,每个宝物都有一个类型值(type)和一个珍贵程度(value)。现在要求选择若干个宝物(可以是0个)放进背包使得x * y最大,x为选择的不同type的数量,y为总的value值之和(同一种宝物value值一致,只计算一次value值)输入第一行输入一个整数n表示物品的数量(1 ≤ n ≤ 200)第二行输入n个整数type_i表示每个物品原创 2021-03-18 11:31:30 · 434 阅读 · 0 评论 -
郑州轻工业大学2021新生赛 2786: 这是一道数学题
郑州轻工业大学2021新生赛 2786: 这是一道数学题题目描述一个数通过最小次数交换数位变成20的倍数。问最少交换次数是多少?输入一个正整数T(1<=T<=200),代表有T组输入。每个输入包含一个正整数N(1<=N<=10的18次方),N没有前导0。输出最小的交换次数。如果不能交换出20的倍数,输出-1样例输入 Copy270007680样例输出 Copy10#include<bits/stdc++.h>using namespace原创 2021-03-17 10:41:41 · 341 阅读 · 0 评论 -
郑州轻工业大学卓见杯2021新生赛靶场射击2.0
郑州轻工业大学卓见杯2020新生赛靶场射击2.0题目描述“欢迎来到靶场射击2.0.”小A正在挑战一款叫做《靶场射击2.0》的游戏。游戏内共有两种靶子,一种是金色靶子,击中可以获得a积分,一种是普通靶子,击中可以获得b积分(a≥b)。每个靶子上都有一个字母,金色靶子上的为大写字母,普通靶子上的为小写字母。当按下按键时,能得到所有对应字母相同的靶子的积分。如"WWWAAaa",按下键'A',则能得到2∗a+2∗b积分,按下键'W',则能得到3∗a积分。小A想挑战点不一样的,他想知道当前局面,按哪个原创 2021-03-16 22:16:31 · 320 阅读 · 0 评论