rh123 题解分享 · 2025/1/15
字符统计(编程题) - 题解
``` #include<iostream> #include<map> #include<string> #include<algorithm> #include<vector> using namespace std; bool cmp(const pair<char,int>&a,const pair<char,int>&b){ if(a.second!=b.second) { return a.second>b.second; } else { return a.first<b.first; } } int main() { map<char,int> m; string s; cin>>s; int len=s.size(); for(int i=0;i<len;i++) { m[s[i]]++; } vector<pair<char,int>> vec(m.begin(),m.end()); sort(vec.begin(),vec.end(),cmp); int maxcount=vec.front().second; for(const auto&p:vec) { if(p.second==maxcount) cout<<p.first; else break; } return 0; } ```
查看全文
0 0 1 0
didhv 题解分享 · 2024/4/4
字符统计(编程题) - 题解
``` import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); String str = scanner.nextLine(); // 从用户输入读取字符串 System.out.println(find(str)); } public static String find(String str) { int[] frequency = new int[26]; // 用于记录每个字母的出现次数,假设只考虑大写字母 // 统计每个字母的出现次数 for (int i = 0; i < str.length(); i++) { char ch = str.charAt(i); if (Character.isUpperCase(ch)) { // 只考虑大写字母 frequency[ch - 'A']++; } } // 找到出现次数最多的字母 int maxFrequency = 0; for (int i = 0; i < frequency.length; i++) { maxFrequency = Math.max(maxFrequency, frequency[i]); } // 构建结果字符串 StringBuilder result = new StringBuilder(); for (char ch = 'A'; ch <= 'Z'; ch++) { if (frequency[ch - 'A'] == maxFrequency) { result.append(ch); } } return result.toString(); } } ` ``` `
查看全文
0 0 1 7
Mandy 题解分享 · 2025/4/9
字符统计(编程题) - 题解
```cpp #include <bits/stdc++.h> using namespace std; map<char,int> mp; int main() { string str; cin>>str; for(int i=0;i<str.size();i++) { mp[str[i]]++; } int maxl=0; for(auto m:mp){ maxl=max(maxl,m.second); } for(auto m:mp){ if(m.second==maxl) cout<<m.first; } return 0; } ```
查看全文
0 0 0 1
chenchen 题解分享 · 2025/3/4
字符统计(编程题) - 题解
``` #include <bits/stdc++.h> #define endl '\n' using namespace std; using ll = long long; using ULL = unsigned long long; const int N = 1e6+5; string s; int cnt[N]; inline void solve() { cin >> s; int sum = 0; for (auto &c : s) { int idx = c - 'A'; if (++cnt[idx] > sum) sum = cnt[idx]; } for (int i = 0; i < 26; i++) { if (cnt[i] == sum) cout << char('A' + i); } } int main() { ios::sync_with_stdio(0), cin.tie(0), cout.tie(0); int _ = 1; //int _; cin >> _; while (_--) solve(); return 0; } ```
查看全文
0 0 0 1
鸣蜩一 题解分享 · 2024/4/11
字符统计(编程题) - 题解
``` #include<bits/stdc++.h> using namespace std; int main() { string s; cin>>s; vector num(26,0); for(auto i=s.begin(); i!=s.end(); i++) { if(*i >='A'&&*i<='Z') { int index = *i-'A'; num[index]++; } } int maxFreq =0;//记录出现最大次数 for(int i=0; i<26; i++) { if(num[i]>maxFreq) { maxFreq = num[i]; } } for(int i=0; i<26; i++) { if(num[i]==maxFreq) { char maxletter = 'A'+i; cout << maxletter; } } } ```
查看全文
0 0 0 1
肥肠肥肠 题解分享 · 2024/4/11
字符统计(编程题) - 题解
``` import java.util.HashMap; import java.util.Map; import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); String str = sc.next(); char[] c = str.toCharArray(); Map<Character, Integer> map = new HashMap<>(); for (int i = 0; i < c.length; i++) { if (map.containsKey(c[i])) { map.put(c[i], map.get(c[i]) + 1); } else { map.put(c[i], 1); } } int max=0; for (char key:map.keySet()){ max=Math.max(map.get(key),max ); } for (char key:map.keySet()){ if (map.get(key)==max){ System.out.print(key); } } } } ```
查看全文
0 0 0 1
xiaoxin 题解分享 · 2024/4/8
字符统计(编程题) - 题解
``` #include<iostream> #include<string> #include<cmath> #include<algorithm> #include<cstdio> #include<cstring> #include<unordered_map> #include<climits> #define x first #define y second using namespace std; unordered_map<char,int> unmap; string s; int main(){ cin>>s; string res; for(char c:s){ unmap[c]++; } int maxx=INT_MIN; for(unordered_map<char,int>::iterator it=unmap.begin();it!=unmap.end();it++){ maxx=max(it->y,maxx); } for(unordered_map<char,int>::iterator it=unmap.begin();it!=unmap.end();it++){ if(it->y==maxx) res+=it->x; } reverse(res.begin(),res.end()); sort(res.begin(),res.end()); cout<<res; } ```
查看全文
0 0 0 1
CQS 题解分享 · 2025/3/10
字符统计(编程题) - 题解
``` #include <iostream> #include <string> using namespace std; int main() { string S; cin >> S; int count[26] = {0}; for (char c : S) { count[c - 'A']++; } int maxCount = 0; for (int i = 0; i < 26; i++) { if (count[i] > maxCount) { maxCount = count[i]; } } for (int i = 0; i < 26; i++) { if (count[i] == maxCount) { cout << (char)(i + 'A'); } } cout << endl; return 0; } ```
查看全文
0 0 0 0
2835778687 题解分享 · 2024/4/7
字符统计(编程题) - 题解
``` #include <iostream> using namespace std; int cnt[26]; int main() { string s; cin>>s; for(int i=0;i<s.size();i++) cnt[s[i]-'A']++; int len=-1,c=0; for(int i=0;i<26;i++) { if(len<cnt[i]) { len=cnt[i]; c=i; } } cout<<(char)(c+'A'); for(int i=0;i<26;i++) { if(i==c) continue; if(cnt[i]==len) cout<<(char)(i+'A'); } return 0; } ```
查看全文
0 0 0 0