Alqoritm Analizi
map<string, int> m
məlumat strukturunu elan edirik, burada hər bir sözün neçə dəfə təkrarlandığını hesablayacağıq. Sonra ən çox təkrarlanan sözü tapırıq. Belə sözlər bir neçədənədirsə, onda leksikografik olaraq ən böyük olanını çıxarırıq.
Alqoritm Tətbiqi
m
xəritəsində hər bir sözün neçə dəfə təkrarlandığını hesablayırıq.
map<string,int> m;
Sözləri oxuyub sayırıq.
cin >> n; for (i = 0; i < n; i++) { cin >> s; m[s]++; }
res
sözünü tapırıq, bu söz mx
dəfə təkrarlanıb.
mx = 0; for (auto x : m) { if (x.second >= mx) { mx = x.second; res = x.first; } }
Maksimum tezlikdə və tezliyin özündə olan sözü çıxarırıq.
cout << res << " " << mx << endl;
Java Tətbiqi
import java.util.*; public class Main { public static void main(String[] args) { Scanner con = new Scanner(System.in); TreeMap<String, Integer> tree = new TreeMap<String, Integer>(); int test = con.nextInt(); while(test-- > 0) { String s = con.next(); tree.put(s, tree.getOrDefault(s, 0) + 1); } int max = -1; String res = null; for(String s : tree.keySet()) { int n = tree.get(s); if (n >= max) { res = s; max = n; } } System.out.println(res + " " + max); con.close(); } }