摘要:
A 题: 越来越弱,都掉渣了....连暴力递归模拟都不会写了...对每个黑棋递归搜索其边界,若遇到相同的黑棋则数量+1继续找,遇到0或者边界则直接return.View Code #include<cstdio>#include<cstdlib>#include<cstring>char mp[110][110];bool flag;int n, m, dir[4][2] = {0,1,0,-1,1,0,-1,0};bool legal(int x,int y){ if( x>=0&&x<n&&y>=0&am 阅读全文
摘要:
题意: 一个串s,经过多次被覆盖,求最小的原串s.思路: 将题目转换下,就是 一个串s的前缀能覆盖串r,且s本身是r的一个后缀. 做法是首先考虑s的前缀能够覆盖r, 则我们从串r开始, 依次比较,并且记录上一次完全匹配(长度与s相同)的位置idx.当出现ri != sj时,令 j = nxt[j], (这样做,而不是直接令J=0,是为了保证模式串最短),因为可能是从头开始的. 继续比较,直到 j = 0, 意味着无法匹配.则将上一次的完全匹配位置idx+1到 i,添加到模式串s中, 然后更新模式串的next函数,因为我们已经知道了. s( 1, length ),这个时候模式串变成 s(... 阅读全文