BZOJ5337 [TJOI2018]str】的更多相关文章

题意 小豆参加了生物实验室.在实验室里,他主要研究蛋臼质.他现在研究的蛋臼质是由k个氨基酸按一定顺序构成的.每一个氨基酸都可能有a种碱基序 列si_j 构成.现在小豆有一个碱基串s,小豆想知道在这个碱基上都多少中不同的组合方式可能得到这个蛋白质.即求由k段字符串有序合并成的字符串s1,有多少种不同方式能够匹配字符串s,其中k段字符串的选法不同,或者与s匹配上的位置不同认为是不同的方式. \(1 ≤ k ≤ 100, |s| ≤ 10000,a_i ≤ 10\) 分析 参照scarlyw的题解.…
[BZOJ5337][TJOI2018]str(动态规划,哈希) 题面 BZOJ 洛谷 题解 就很呆... 显然按层\(dp\),如果能够匹配上就进行转移,直接哈希判断是否能够匹配就好了... #include<iostream> #include<cstdio> #include<cstring> using namespace std; #define MOD 1000000007 #define MAX 10010 #define ull unsigned lon…
bzoj 5337 [TJOI2018] str Link Solution 水题 直接 \(f[i][j]\) 表示以第 \(i\) 位为结束位置,当前已经匹配了前 \(j\) 个氨基酸的方案数 使用哈希转移 转移复杂度 \(O(10)\),总复杂度 \(1e7\) Code #include<stdio.h> #include<cstring> #include<cstdlib> #include<algorithm> #include<vecto…
题目分析: 这道题的难点在于要取模,而题面没有写. 容易想到一个O(1E7)的dp.KMP或者哈希得到相关位置然后对于相关位置判断上一个位置有多少种情况. 代码: #include<bits/stdc++.h> using namespace std; ; ; int n; string str; ][]; ]; ; struct hnum{ int base; unsigned ]; unsigned ]; }h[]; void read(){ ios::sync_with_stdio(fa…
突然意识到有一些题目的计划,才可以减少大量查水表或者找题目的时间. 所以我决定这样子处理. 按照这个链接慢慢做. 当然不可能只做省选题了. 需要适时候夹杂一些其他的题目. 比如\(agc/arc/cf\)的题目,以及\(loj\)上的一些省的集训题目,还有\(uoj\)的各种\(round\)的题目. 大块大块的做题记录就在这里记录一下,省选后再来看结果,至少努力过就不曾后悔了不是吗? 首先先是省选题的记录,然后有比赛的记录,做到每周至少完成一整场\(CF\)或者\(AtCoder\)比赛的题解…
link 题意: 给一个模板串s和n个模式串,每个模式串有$a_i$种可取的串.现在要将n个模式串每个任取一种它可取的串,连接起来,记为串t,那么这种连接方式对答案的贡献为t在s中出现的次数.问所有连接方式的贡献之和. $n\leq 100,|S|\leq 10^4.$ 题解: 设f[i][j]表示使用前i个模式串,匹配前j位的贡献.对每个模式串的每种可能转移,使用hash判断是否匹配. 复杂度$\mathcal{O}(|S|\times \sum a_i)$. 花絮: 今天我生日> <,生快…
碱基序列 题目描述 小豆参加了生物实验室.在实验室里,他主要研究蛋白质.他现在研究的蛋白质是由$k$个氨基酸按一定顺序构成的.每一个氨基酸都可能有$a$种碱基序列$s_{i,j}$构成. 现在小豆有一个碱基串$s$,小豆想知道在这个碱基上都多少中不同的组合方式可能得到这个蛋白质.即求由$k$段字符串有序合并成的字符串$s_1$,有多少种不同方式能够匹配字符串$s$,其中$k$段字符串的选法不同,或者与$s$匹配上的位置不同认为是不同的方式. 输入输出格式 输入格式: 第一行一个数,表示这个蛋白质…
早上被python的编码搞得抓耳挠腮,在搜资料的时候感觉这篇博文很不错,所以收藏在此. python2.x中处理中文,是一件头疼的事情.网上写这方面的文章,测次不齐,而且都会有点错误,所以在这里打算自己总结一篇文章. 我也会在以后学习中,不断的修改此篇博客. 这里假设读者已有与编码相关的基础知识,本文不再再次介绍,包括什么是utf-8,什么是unicode,它们之间有什么关系. str与字节码 首先,我们完全不谈unicode. s = "人生苦短" s是个字符串,它本身存储的就是字节…
实例1: v1=u '好神奇的问题!?' type(v1)->unicode v1.decode("utf-8")# not work,because v1 is unicode already v1.encode("gb2312")#work,convert from unicode into gbk2312 [发现] decode是把指定的对象转化为unicode(unicode包含utf-8,utf-16),并且指明了待转化对象的编码方式. encode…
LDR(load register)指令将内存内容加载入通用寄存器 STR(store register)指令将寄存器内容存入内存空间中 #define GPJ0CON 0xE0200240 _start: ldr r0, =0x11111111 // 将立即数/非法立即数,赋值给r0 ldr r1, =GPJ0CON // 将GPJ0CON的地址赋给r1 str r0, [r1] // 寄存器间接寻址.把r0中的数写入到r1中的数为地址的内存中去 ldr r0,[r1] //将r1的值赋给r0…
Python之str()与repr()的区别 str()一般是将数值转成字符串,主要面向用户.  repr()是将一个对象转成字符串显示,注意只是显示用,有些对象转成字符串没有直接的意思.如list,dict使用str()是无效的,但使用repr可以,这是为了看它们都有哪些值,为了显示之用,主要面向python. 官方文档: The str() function is meant to return representations of values which are fairlyhuman-…
1.str == null; 2."".equals(str); 3.str.length 4.str.isEmpty(); 注意:length是属性,一般集合类对象拥有的属性,取得集合的大小. 例如:数组.length就是取得数组的长度.length()是方法,一般字符串类对象有该方法,也是取得字符串长度.例如:字符串.length(); 说明: 1.null表示这个字符串不指向任何的东西,如果这时候你调用它的方法,那么就会出现空指针异常. 2.""表示它指向一个…
出现该错误往往是通过open()函数打开文本文件时,使用了'rb'属性,如:fileHandle=open(filename,'rb'),则此时是通过二进制方式打开文件的,所以在后面处理时如果使用了str()函数,就会出现该错误,该错误不会再python2中出现. 具体解决方法有以下两种: 第一种,在open()函数中使用'r'属性,即文本方式读取,而不是'rb',以二进制文件方式读取,可以直接解决问题. 第二种,在open()函数中使用'rb',可以在使用之前进行转换,有以下实例,来自:htt…
1.问题描述 1.1表结构 1.2问题 ref_list为id列表的字符串,需要从ref_list中找出包含指定id的数据(eg id=8).如果实用models.objects.filter(ref_list__contains=id)无法实现精确查找 models.objects.filter(ref_list__contains=') ''' 结果: 1 | 8,9,10,11 2 | 18,81 3 | 23,8,33 4 | 36,78,8 5 | 37,98, 69 有多余的数据,增…
字符串常用操作 移除空白 分割 长度 索引 切片 class str(basestring): """ str(object='') -> string Return a nice string representation of the object. If the argument is a string, the return value is the same object. """ def capitalize(self): &q…
刚开始学习Python,看了一天的字符串内部方法,现在来总结一下. capitalize(self) 将一句话的首字母变大写,其他字母都变小 name = "love PyThon" # capitalize(self) result1 = name.capitalize() #将一句话的首字母变大写,其他字母都变小 print('result1:%s'%result1) 打印结果: result1:Love python casefold(self) 官方解释比较霸道,确实是比较霸道…
#!usr/bin/env python# -*-coding:utf-8-*-#字符串通常用双引号或单引号来表示:'123',"abc","字符串"#str字符串的常用方法有以下:字符串可以用于赋值临时变量s#友情提示以下全是python2.x版本演示,python3.x请在print(放入测试打印),例如:print(len(s))from string import maketranss3 = '123's2 = '   's1 = 'This Is \t C…
function xml_parser($str){ $xml_parser = xml_parser_create(); if(!xml_parse($xml_parser,$str,true)){ xml_parser_free($xml_parser); return false; }else { return (json_decode(json_encode(simplexml_load_string($str)),true)); } }…
#使用str.format()函数 #使用'{}'占位符 print('I\'m {},{}'.format('Hongten','Welcome to my space!')) >>> I'm Hongten,Welcome to my space! print('#' * 40) #也可以使用'{0}','{1}'形式的占位符 print('{0},I\'m {1},my E-mail is {2}'.format('Hello','Hongten','hongtenzone@fox…
CPrimerPlus的11章复习题10:编写个函数,其参数为一个字符串指针,返回一个指针,返回的指针指向字符串中第一个空格的位置(如果没有空格就返回空指针) #include <stdio.h> char * FindSpace(char *); int main(void) { char str[] = "tom loves lily"; puts(str); puts(FindSpace(str)); } char * FindSpace(char * str) {…
1. string str = "32323";2. double a = (double)str ;3. double a = Convert.ToDouble(str); 第3行会转换成功,第2行就会报错,ToDouble方法会自动进行溢出检查,但是为什么第2行会失败? 转换方法 Method1: double.TryParseMethod2: Convert.ToDouble str是个对象,不是指针,所以不能直接那样转.它们在内存中的分布也是不一样的. 在C#中, 类似于(do…
Python中定义常量 都用大写 Pip 安装python第三方模块的命令  一般默认都放在/python27/lib/site-pak List.count(‘元素’)-------------统计list中有几个相同的元素 List.index(‘元素’)---------返回当前(第一个出现的)元素的下标 通过下标来修改list中的相同的值 for i in range(lis.count(90)):    nn = lis.index(90)    lis[nn] = 999999999…
参考文章:Python 3的bytes/str之别 len()函数计算的是str的字符数,如果换成bytes,len()函数就计算字节数 >>> len('ABC') 3 >>> len('中文') 2 >>> len(b'ABC') 3 >>> len(b'\xe4\xb8\xad\xe6\x96\x87') 6 >>> len('中文'.encode('utf-8')) 6…
1.bin() 将整数x转换为二进制字符串,如果x不为Python中int类型,x必须包含方法__index__()并且返回值为integer: 参数x:整数或者包含__index__()方法切返回值为integer的类型: #!/usr/bin/env python r = bin(10) print(r) 2.chr(i) 返回整数i对应的ASCII字符.与ord()作用相反. 参数x:取值范围[0, 255]之间的正数. 版本:该函数在python2和python3各个版本中都可用.不存在…
String是一个非常常用的类,应该深入的去了解String 如: String str =new String("abc") String str1 = "abc" System.out.println(str == str1) System.out.println(str.equal(str1)) 结果: false true 原因解析: Java运行环境有一个字符串池,由String类维护,执行语句String str="abc"时 1.…
ARM是RISC结构,数据从内存到CPU之间的移动只能通过L/S指令来完成,也就是ldr/str指令.比如想把数据从内存中某处读取到寄存器中,只能使用ldr比如:ldr r0, 0x12345678就是把0x12345678这个地址中的值存放到r0中.而mov不能干这个活,mov只能在寄存器之间移动数据,或者把立即数移动到寄存器中,这个和x86这种CISC架构的芯片区别最大的地方.x86中没有ldr这种指令,因为x86的mov指令可以将数据从内存中移动到寄存器中. 另外还有一个就是ldr伪指令,…
#capitalize():字符串首字符大写 string = 'this is a string.'new_str = string.capitalize()print(new_str)#输出:This is a string. #center(width, fillchar=None):将字符串放在中间,在指定长度下,首尾以指定字符填充string = 'this is a string.'new_str = string.center(30,'*')print(new_str)#输出:**…
python (2.X)在进行 运行时候字符串运算的时候, 分为两种类型 str, unicode 前者是 二进制的形式进行对字符串的保存, 后者是 以unicode的方式进行保存, 一般的工作方式为: str -> decode() -> unicode ->encode() -> str, 在所有的运行时都为unicode是一个良好的习惯, 一般来说系统的库都是支持 unicode(个别除外:csv等). 而且第三方的库也是支持的. 只有在将数据保存到文件,数据库等其他的外部的…
出自:http://blog.csdn.net/ycwload/article/details/2650059 今天要找和存储管理相关的一些知识,网上搜了半天也没有找到完善的(30%的程度都不到),没办法,下载了曾经大学里的一本pdf格式的教学书,看了整整一天才算是搞明白存储管理中的一部分知识.曾几何时,我曾写过大学无用的一些小论题,觉得大学里教的东西不切合实际,理论化偏严重,总认为用理论教出来的人,总是说着牛逼,做事掉渣的人.所以,在大学里,我的学习只能说是应付考试,太多的东西都没有去深入了解…
前言: 在使用Visual Studio开发web页面时,需要在GridView中绑定Table数据,并加入了CommandField, 试图,点击详情按钮是,获取GridView中Rows中Cells[1]的值,我使用了如下语句,如: string cart = GridViewPacked.Rows[e.NewSelectedIndex].Cells[1].Text.ToString(); 并使用了,Session["cart"] = cart;存入缓存. 今天突然发现当GridV…