UOJ Logo

NOI.AC

IDProblemSubmitterResultTimeMemoryLanguageFile sizeSubmit timeJudge time
#197057#3422. Bsmwtcat10034ms3656kbC++111.3kb2023-11-05 12:22:062023-11-05 13:04:06

answer

#include<bits/stdc++.h>
#define rep(i, n) for(int i = 0; i < n; ++i)
using namespace std;
typedef long long ll;
typedef vector<int> vi;
typedef pair<int, int> pii;
const int Mod = 998244353;
const int inf = 0x3f3f3f3f;
inline void uadd(int &a, int b){ a += b-Mod; a += (a>>31) & Mod; }
inline void usub(int &a, int b){ a -= b, a += (a>>31) & Mod; }
inline void umul(int &a, int b){ a = (int)(1ll * a * b % Mod); }
inline int add(int a, int b){ a += b-Mod; a += (a>>31) & Mod; return a; }
inline int sub(int a, int b){ a -= b, a += (a>>31) & Mod; return a; }
inline int mul(int a, int b){ return (int)(1ll * a * b % Mod); }

string s, t;
int cs[33], ct[33], p[33], r[33];

int main(){
	ios::sync_with_stdio(false);
	cin.tie(0);

	cin >> s >> t;
	rep(i, (int)s.size()) ++cs[s[i] - 'a'];
	rep(i, (int)t.size()) ++ct[t[i] - 'a'];

	int res = 0;
	for(int x = 1; x <= (int)t.size(); ++x){
		bool ok = 1;
		rep(i, 26){
			int lb = (ct[i] + x) / (x+1), ub = ct[i] / x;
			if(lb > ub){ ok = 0; break; }
			p[i] = lb, r[i] = ct[i] - x * p[i];
		}
		if(!ok) continue;
		int ans = inf, can = 1;
		rep(i, 26) if(ct[i]) ans = min(ans, cs[i] / p[i]);
		rep(i, 26) if(ct[i]) can &= (cs[i] - ans * p[i] >= r[i]);
		//cout << x << ": " << ans << " " << can << endl;
		res = max(res, ans + can - x);
	}

	cout << res << "\n";

	return 0;
}

Details

小提示:点击横条可展开更详细的信息

Subtask #1:

score: 10
Accepted

Test #1:

score: 10
Accepted
time: 0ms
memory: 1240kb

input:

aaaaaaaaaa
aa

output:

9

result:

ok single line: '9'

Test #2:

score: 0
Accepted
time: 0ms
memory: 1240kb

input:

bbabbbbbaa
bba

output:

3

result:

ok single line: '3'

Test #3:

score: 0
Accepted
time: 0ms
memory: 1244kb

input:

aacccabcbb
babba

output:

1

result:

ok single line: '1'

Test #4:

score: 0
Accepted
time: 0ms
memory: 1240kb

input:

aaaaaaaaa
aaaaaaaaaa

output:

0

result:

ok single line: '0'

Subtask #2:

score: 20
Accepted

Test #5:

score: 20
Accepted
time: 0ms
memory: 1244kb

input:

dacbddccbcddbcbababddbdcdccacbcbdbadadaaadbacbccdcabbacbbaccbadbaacbbccdadabadbaadabbbccbc
addaddddcb

output:

5

result:

ok single line: '5'

Test #6:

score: 0
Accepted
time: 1ms
memory: 1240kb

input:

ccbcdeeddbcdcdecbbbddbdadacbddcedaacbacdadaedaaeaebecbcdceeeccedabacbaeceabeedcdddbebceaedadaead
edc...

output:

7

result:

ok single line: '7'

Test #7:

score: 0
Accepted
time: 0ms
memory: 1244kb

input:

cfedcbcccbebeebdababcecdcbbffaacbfefddebbaefdbccbacecbcbfdfaeccbeaebfbedbecdbfdadcdcbbbefceefedbbcfd...

output:

2

result:

ok single line: '2'

Test #8:

score: 0
Accepted
time: 0ms
memory: 1240kb

input:

dahfaccbehadcbdfaeahceaghfaheegcaehbgbeacbhgddabhgahcehdbhdabbcdaedcfgeecggghagabebdgecdccgaacead
bh...

output:

0

result:

ok single line: '0'

Subtask #3:

score: 30
Accepted

Test #9:

score: 30
Accepted
time: 0ms
memory: 1240kb

input:

hedgehecchbeefehhhfgdbbgfffbchabbgghceabbaacafcbfefagefadhcafhfbdbfgaachcfffccbfhcecadfffagcdggacbhg...

output:

31

result:

ok single line: '31'

Test #10:

score: 0
Accepted
time: 0ms
memory: 1240kb

input:

ecibghchgbibddhijdfeiajdgiiijfccdjeehfchgibdadagecbjdajhdaddgbhdgcjcafjeadjbcegcchjfbifhgeicfecgbgdf...

output:

24

result:

ok single line: '24'

Test #11:

score: 0
Accepted
time: 0ms
memory: 1244kb

input:

ggabdjpbmdiofcrhqbhdoggiapfjinlakfljphfcjcgrafnmfrhnnmhpbbphjchfdncbmpmhecmhlfhccdfbdlijjokpeeddnebm...

output:

4

result:

ok single line: '4'

Test #12:

score: 0
Accepted
time: 0ms
memory: 1240kb

input:

ucjeamcftpoguuqntgooupahmoiakuqmjveoaiswreedhhuerubsmqnluorobpmivtgantosmpukpwwwepmsoafopjloflrtlwve...

output:

1

result:

ok single line: '1'

Subtask #4:

score: 20
Accepted

Test #13:

score: 20
Accepted
time: 4ms
memory: 2740kb

input:

baaaaaabbaabbbbbbbbbaaaaaabaababaabaaaababaaababbaababbbaabaaababbbbbababbabbabaaaaaaaababbbbbbbabaa...

output:

20781

result:

ok single line: '20781'

Test #14:

score: 0
Accepted
time: 0ms
memory: 2736kb

input:

aaababbaabaabbaaabbabbabbbbabbabbbbaababbbbbbbaabbbbaaaababbbbabbbaaababbabbaaabbaabbbabbabbabaaaaab...

output:

6342

result:

ok single line: '6342'

Test #15:

score: 0
Accepted
time: 6ms
memory: 3128kb

input:

aaaaaabbabaaabbbabbabbaabaaaabaabaabbabababaabbbaaaabaabaaaabaababaabbbaabababbabbbabaaaabaabaaabaaa...

output:

3787

result:

ok single line: '3787'

Test #16:

score: 0
Accepted
time: 4ms
memory: 3656kb

input:

bbabbbbbababbaabaaaaaaabbabbaabbbbbbbaababbbbabaaabbaabbabbabaabbabbaababbabaababbabaabbbbaabaabbbba...

output:

703

result:

ok single line: '703'

Subtask #5:

score: 20
Accepted

Test #17:

score: 20
Accepted
time: 2ms
memory: 2740kb

input:

nvxoxgqfuilsoxqifkupzxfixypciqedniqfolwinknpbvirzumziwgydnpzveforflrvhqawunapsfgehrbshpwnbeflzangvki...

output:

1734

result:

ok single line: '1734'

Test #18:

score: 0
Accepted
time: 4ms
memory: 2740kb

input:

tsprehnxxhfxeiylieexztdrjjeddmbldllwwdidozttnbsxfjatldgwakclhtvqhahelfuilfgbywxophxarvbbnlwurrcbsmjq...

output:

516

result:

ok single line: '516'

Test #19:

score: 0
Accepted
time: 4ms
memory: 3128kb

input:

ofbbhbatrlvkhffgokvyqzjwravodimondolzonigqkfgbvcupixsehvqusgwvwejfjzgkfuqdgbqbkceqccijalndniciodwqfr...

output:

132

result:

ok single line: '132'

Test #20:

score: 0
Accepted
time: 9ms
memory: 3396kb

input:

ytnvgvibokstopejooithobacaxadnuhhoylnrfiqfqmogfacbyzxgzufdiarhzpwjyigeijrotabbzpqvliaxycyucjgleubqea...

output:

47

result:

ok single line: '47'

Extra Test:

score: 0
Extra Test Passed