题意:定义了字符串的相等,问两串是否相等. 卡了时间,空间,不能新建字符串,否则会卡. #pragma comment(linker,"/STACK:1024000000,1024000000") #include<iostream> #include<cstdio> #include<string> #include<cstring> #include<vector> #include<cmath> #inclu…
559B - Equivalent Strings 思路:字符串处理,分治 不要用substr(),会超时 AC代码: #include<bits/stdc++.h> #include<cstring> using namespace std; #define ll long long ; bool cmp(char a[],char b[],int l) { bool ans=true; ;i<l;i++)if(a[i]!=b[i])ans=false; return an…
http://codeforces.com/problemset/problem/559/B 这个题目,分治就好了,每次偶数层可以多一种判断方式,判断它的时间就是logn的(吧),注意奇数层并不是直接退出!题目给了另一种相等的条件. #include<bits/stdc++.h> using namespace std; #define ll long long ]; ]; bool isequal(char *sb,int slen,char *tb,int tlen){ if(slen!=…
题意:给定两个等长串a,b.推断是否等价.等价的含义为:若长度为奇数,则必须是同样串.若长度是偶数,则将两串都均分成长度为原串一半的两个子串al,ar和bl,br,当中al和bl等价且ar和br等价,或者al和br等价且ar和bl等价. 实际上非常水.直接依照题意模拟写个递归分治就能够求.比赛的时候总认为这样暴力写会TLE,由于算了下大概是4^(log2(n))的复杂度.也就是n^2.所以比赛的时候就想了下.将两个串都依照题意转化为字典序最小串(循环节的最小表示法)然后比較a和b的两个最小表示法…
Equivalent Strings Problem's Link: http://codeforces.com/contest/559/problem/B Mean: 给定两个等长串s1,s2,判断是否等价. 等价的含义为: 若长度为奇数,则必须是相同串. 若长度是偶数,则将两串都均分成长度为原串一半的两个子串l1,r1和l2,r2,其中l1和l2等价且r1和r2等价,或者l1和r2等价且l2和r1等价. analyse: 直接按照题意模拟写个递归分治就行.比赛的时候总觉得这样暴力写会TLE,…
D. Equivalent Strings Time Limit: 2 Sec Memory Limit: 256 MB 题目连接 http://codeforces.com/contest/559/problem/B Description Today on a lecture about strings Gerald learned a new definition of string equivalency. Two strings a and b of equal length are…
B. Equivalent Strings Time Limit: 20 Sec Memory Limit: 256 MB 题目连接 http://codeforces.com/contest/559/problem/B Description Today on a lecture about strings Gerald learned a new definition of string equivalency. Two strings a and b of equal length are…
D. Equivalent Strings time limit per test 2 seconds memory limit per test 256 megabytes input standard input output standard output Today on a lecture about strings Gerald learned a new definition of string equivalency. Two strings a and b of equal l…
A题: 题目地址:Currency System in Geraldion 题意:给出n中货币的面值(每种货币有无数张),要求不能表示出的货币的最小值.若全部面值的都能表示,输出-1. 思路:水题,就是看看有没有面值为1的货币,假设有的话,全部面值的货币都能够通过1的累加得到,假设没有的话.最小的不能表示的就当然是1辣. #include <stdio.h> #include <math.h> #include <string.h> #include <stdli…
A. Currency System in Geraldion: 题意:有n中不同面额的纸币,问用这些纸币所不能加和到的值的最小值. 思路:显然假设这些纸币的最小钱为1的话,它就能够组成随意面额. 假设这些纸币的最小值大于1,那么它所不能组成的最小面额就是1.所以自学求最小值就可以. 我的代码: #include <set> #include <map> #include <cmath> #include <stack> #include <queue…