ID | Problem | Submitter | Result | Time | Memory | Language | File size | Submit time | Judge time |
---|---|---|---|---|---|---|---|---|---|
#197038 | #3422. B | Zeardoe | 100 | 104ms | 3664kb | C++11 | 3.1kb | 2023-11-05 11:16:38 | 2023-11-05 13:02:43 |
answer
/*
[templates]:
duipai
spjdp
compre
addhis
floor_sum
treedfs
matrix
network_flow
polynomial
lca
bitset
valuesgt
fenwick
erbitree
*/
//#pragma GCC optimize("Ofast")
//#pragma GCC target("avx")
#include<bits/stdc++.h>
using namespace std;
#define int long long
//use ll instead of int.
#define f(i, a, b) for(int i = (a); i <= (b); i++)
#define cl(i, n) i.clear(),i.resize(n);
#define endl '\n'
typedef long long ll;
typedef unsigned long long ull;
typedef pair<int, int> pii;
typedef pair<ll, ll> pll;
const int inf = 1e18;
//#define cerr if(false)cerr
//#define freopen if(false)freopen
mt19937 rng(time(0));
int rnd(int l, int r) {return rng() % (r-l+1) + l; }
#define watch(x) cerr << (#x) << ' '<<'i'<<'s'<<' ' << x << endl
void pofe(int number, int bitnum) {
string s; f(i, 0, bitnum) {s += char(number & 1) + '0'; number >>= 1; }
reverse(s.begin(), s.end()); cerr << s << endl;
return;
}
template <typename TYP> void cmax(TYP &x, TYP y) {if(x < y) x = y;}
template <typename TYP> void cmin(TYP &x, TYP y) {if(x > y) x = y;}
//调不出来给我对拍!
//use std::array.
int t[26], s[26]; int n; pii res[26];
void exgcd(int a, int b, int &x, int &y) {
if(a == 0) {return x = 0, y = 1, void(); }
exgcd(b % a, a, y, x);
//(b-(b/a)*a)y+ax=1
x -= (b / a) * y;
return;
}
pii gettu(int x, int su) {
//find (unique) u, v such that ux + v(x-1) = su.
if(x == 1) return {su, 0};
int u, v;
exgcd(x - 1, x, v, u);
u *= su; v *= su;
// cerr << u << " " << v << endl;
int at = (int) floor(v * 1.0 / x);
// cerr << at << endl;
v -= at * x;
u += at * (x - 1);
// cerr << x << " " << su << " " << u << " " << v << endl;
if(u < 0 || v < 0) return {-1, -1};
else return {u, v};
}
signed main() {
ios::sync_with_stdio(0);
cin.tie(NULL);
cout.tie(NULL);
//freopen();
//freopen();
//time_t start = clock();
//think twice,code once.
//think once,debug forever.
f(i, 0, 25) t[i] = s[i] = 0;
string u; cin >> u; for(char ch : u) s[ch - 'a'] ++;
string v; cin >> v; for(char ch : v) t[ch - 'a'] ++;
bool grt = 1;
f(i, 0, 25) if(s[i] < t[i]) {
grt = 0; break;
}
if(grt == 0) {
cout << 0 << endl;
return 0;
}
n = v.size();
int ans = 0;
for(int x = v.size(); x >= 1; x --) {
bool ok = 1;
f(i, 0, 25) {
res[i] = gettu(x, t[i]);
if(res[i] == pii{-1, -1}) {
ok = 0;
break;
}
}
if(ok == 1) {
int tmp = inf;
f(i, 0, 25) if(res[i].first + res[i].second != 0) {
cmin(tmp, (s[i] - t[i]) / (res[i].first + res[i].second));
}
// cerr << "tmp = " << tmp << endl;
cmax(ans, tmp + 1);
}
}
cout << ans << endl;
//time_t finish = clock();
//cout << "time used:" << (finish-start) * 1.0 / CLOCKS_PER_SEC <<"s"<< endl;
return 0;
}
Details
小提示:点击横条可展开更详细的信息
Subtask #1:
score: 10
Accepted
Test #1:
score: 10
Accepted
time: 0ms
memory: 1248kb
input:
aaaaaaaaaa aa
output:
9
result:
ok single line: '9'
Test #2:
score: 0
Accepted
time: 0ms
memory: 1244kb
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: 1248kb
input:
aaaaaaaaa aaaaaaaaaa
output:
0
result:
ok single line: '0'
Subtask #2:
score: 20
Accepted
Test #5:
score: 20
Accepted
time: 0ms
memory: 1248kb
input:
dacbddccbcddbcbababddbdcdccacbcbdbadadaaadbacbccdcabbacbbaccbadbaacbbccdadabadbaadabbbccbc addaddddcb
output:
5
result:
ok single line: '5'
Test #6:
score: 0
Accepted
time: 0ms
memory: 1244kb
input:
ccbcdeeddbcdcdecbbbddbdadacbddcedaacbacdadaedaaeaebecbcdceeeccedabacbaeceabeedcdddbebceaedadaead edc...
output:
7
result:
ok single line: '7'
Test #7:
score: 0
Accepted
time: 0ms
memory: 1248kb
input:
cfedcbcccbebeebdababcecdcbbffaacbfefddebbaefdbccbacecbcbfdfaeccbeaebfbedbecdbfdadcdcbbbefceefedbbcfd...
output:
2
result:
ok single line: '2'
Test #8:
score: 0
Accepted
time: 0ms
memory: 1248kb
input:
dahfaccbehadcbdfaeahceaghfaheegcaehbgbeacbhgddabhgahcehdbhdabbcdaedcfgeecggghagabebdgecdccgaacead bh...
output:
0
result:
ok single line: '0'
Subtask #3:
score: 30
Accepted
Test #9:
score: 30
Accepted
time: 0ms
memory: 1248kb
input:
hedgehecchbeefehhhfgdbbgfffbchabbgghceabbaacafcbfefagefadhcafhfbdbfgaachcfffccbfhcecadfffagcdggacbhg...
output:
31
result:
ok single line: '31'
Test #10:
score: 0
Accepted
time: 0ms
memory: 1248kb
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: 1244kb
input:
ucjeamcftpoguuqntgooupahmoiakuqmjveoaiswreedhhuerubsmqnluorobpmivtgantosmpukpwwwepmsoafopjloflrtlwve...
output:
1
result:
ok single line: '1'
Subtask #4:
score: 20
Accepted
Test #13:
score: 20
Accepted
time: 2ms
memory: 2744kb
input:
baaaaaabbaabbbbbbbbbaaaaaabaababaabaaaababaaababbaababbbaabaaababbbbbababbabbabaaaaaaaababbbbbbbabaa...
output:
20781
result:
ok single line: '20781'
Test #14:
score: 0
Accepted
time: 2ms
memory: 2748kb
input:
aaababbaabaabbaaabbabbabbbbabbabbbbaababbbbbbbaabbbbaaaababbbbabbbaaababbabbaaabbaabbbabbabbabaaaaab...
output:
6342
result:
ok single line: '6342'
Test #15:
score: 0
Accepted
time: 17ms
memory: 3140kb
input:
aaaaaabbabaaabbbabbabbaabaaaabaabaabbabababaabbbaaaabaabaaaabaababaabbbaabababbabbbabaaaabaabaaabaaa...
output:
3787
result:
ok single line: '3787'
Test #16:
score: 0
Accepted
time: 33ms
memory: 3664kb
input:
bbabbbbbababbaabaaaaaaabbabbaabbbbbbbaababbbbabaaabbaabbabbabaabbabbaababbabaababbabaabbbbaabaabbbba...
output:
703
result:
ok single line: '703'
Subtask #5:
score: 20
Accepted
Test #17:
score: 20
Accepted
time: 0ms
memory: 2748kb
input:
nvxoxgqfuilsoxqifkupzxfixypciqedniqfolwinknpbvirzumziwgydnpzveforflrvhqawunapsfgehrbshpwnbeflzangvki...
output:
1734
result:
ok single line: '1734'
Test #18:
score: 0
Accepted
time: 2ms
memory: 2748kb
input:
tsprehnxxhfxeiylieexztdrjjeddmbldllwwdidozttnbsxfjatldgwakclhtvqhahelfuilfgbywxophxarvbbnlwurrcbsmjq...
output:
516
result:
ok single line: '516'
Test #19:
score: 0
Accepted
time: 18ms
memory: 3136kb
input:
ofbbhbatrlvkhffgokvyqzjwravodimondolzonigqkfgbvcupixsehvqusgwvwejfjzgkfuqdgbqbkceqccijalndniciodwqfr...
output:
132
result:
ok single line: '132'
Test #20:
score: 0
Accepted
time: 30ms
memory: 3400kb
input:
ytnvgvibokstopejooithobacaxadnuhhoylnrfiqfqmogfacbyzxgzufdiarhzpwjyigeijrotabbzpqvliaxycyucjgleubqea...
output:
47
result:
ok single line: '47'
Extra Test:
score: 0
Extra Test Passed