Un număr natural x, format din exact două cifre, este numit sub-număr al unui număr natural y dacă cifrele lui x apar, în aceeași ordine, pe ranguri consecutive, în numărul y. Să se determine, pentru mai multe numere date, sub-numerele care apar de cele mai multe ori în scrierea acestora.
AntiEaglesDavids:
da un exemplu
Răspunsuri la întrebare
Răspuns de
2
#include <bits/stdc++.h>
using namespace std;
unsigned n, m, lg;
string x, s, subnr;
set<string> sol;
int main()
{
cin >> n;
for(int i = 1; i <= n; i++, m = 0, sol.clear()) {
cin >> x;
lg = x.length();
for(unsigned j = 0, asubnr = 0; j < lg - 1; j++, asubnr = 0) {
for(unsigned k = 0; k < lg - 1; k++)
if((x.substr(j, 2) == x.substr(k, 2)) && k != j)
asubnr++;
subnr = x.substr(j, 2);
if(asubnr > m) {
m = asubnr;
sol.clear();
sol.insert(subnr);
}
else if(asubnr == m)
sol.insert(subnr);
}
cout << x << " are subnumerele maxime: ";
for(const auto & s : sol)
cout << s << ' ';
cout << '\n';
}
return 0;
}
using namespace std;
unsigned n, m, lg;
string x, s, subnr;
set<string> sol;
int main()
{
cin >> n;
for(int i = 1; i <= n; i++, m = 0, sol.clear()) {
cin >> x;
lg = x.length();
for(unsigned j = 0, asubnr = 0; j < lg - 1; j++, asubnr = 0) {
for(unsigned k = 0; k < lg - 1; k++)
if((x.substr(j, 2) == x.substr(k, 2)) && k != j)
asubnr++;
subnr = x.substr(j, 2);
if(asubnr > m) {
m = asubnr;
sol.clear();
sol.insert(subnr);
}
else if(asubnr == m)
sol.insert(subnr);
}
cout << x << " are subnumerele maxime: ";
for(const auto & s : sol)
cout << s << ' ';
cout << '\n';
}
return 0;
}
Alte întrebări interesante
Limba română,
8 ani în urmă
Limba română,
8 ani în urmă
Matematică,
8 ani în urmă
Chimie,
9 ani în urmă
Matematică,
9 ani în urmă
Matematică,
9 ani în urmă
Matematică,
9 ani în urmă
Matematică,
9 ani în urmă