Leeee 题解分享 · 2025/2/9
单词分析(编程题) - 题解
``` #include <bits/stdc++.h> using namespace std; int main() { string str; vector<int> tab(27, 0); //开数组做字母表(下标1代表A以此类推) cin >> str; for (int i = 0; i < (int)str.length(); i++) { int idx = str[i] - 96; tab[idx]++; //字母出现次数 } int max = 1; //找出现次数最多的字母下标 for (int i = 2; i <= 26; i++) { if (tab[max] < tab[i]) max = i; } cout << (char)(max + 96) << '\n' << tab[max];//打印出现次数最多的字母和次数 return 0; } ```
查看全文
0 0 1 1
rh123 题解分享 · 2025/1/17
单词分析(编程题) - 题解
``` #include<iostream> #include<map> #include<vector> #include<string> #include<algorithm> using namespace std; bool cmp(const pair<char,int>&a,const pair<char,int>&b) { return a.second>b.second; } int main() { string s; cin>>s; map<char,int> m; 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); cout<<vec.front().first<<'\n'<<vec.front().second; } ```
查看全文
0 0 1 1
didhv 题解分享 · 2024/4/4
单词分析(编程题) - 题解
``` import java.util.*; public class Main { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); // 创建 Scanner 对象,用于读取输入 String word = scanner.nextLine(); // 读取输入的单词 int[] freq = new int[26]; // 创建长度为 26 的数组,用于记录每个字母出现的次数 for (char c : word.toCharArray()) { // 遍历单词的每个字符 freq[c - 'a']++; // 更新对应字母的出现次数 } int maxFreq = 0; // 记录出现次数最多的字母的出现次数 char mostFrequent = 'a'; // 记录出现次数最多的字母 for (int i = 0; i < 26; i++) { // 遍历字母频率数组 if (freq[i] > maxFreq) { // 如果当前字母的出现次数大于最大出现次数 maxFreq = freq[i]; // 更新最大出现次数 mostFrequent = (char) ('a' + i); // 更新出现次数最多的字母 } } System.out.println(mostFrequent); // 输出出现次数最多的字母 System.out.println(maxFreq); // 输出出现次数最多的字母的出现次数 } } ```
查看全文
0 0 0 7
sasigiii 题解分享 · 2025/2/3
单词分析(编程题) - 题解
``` #include<bits/stdc++.h> using namespace std; vector<int> v(1010, 0); int main() { string s; cin >> s; int len = s.size(); for(int i = 0; i < len; i++) { v[s[i]-'a']++; } int maxCount = 0; for(int i = 0; i < 1010; i++) { if(v[i] > maxCount) { maxCount = v[i]; } } for(int i = 0; i < 1010; i++) { if(v[i] == maxCount) { cout << (char)(i + 'a') << endl; cout << maxCount; break; } } } ```
查看全文
0 0 0 1
Liopen 题解分享 · 2024/4/14
单词分析(编程题) - 题解
``` #include<cstdio> #include<iostream> #include<algorithm> using namespace std; int hs[26]; int main(){ string s; cin>>s; int len=s.length(); for(int i=0;i<len;++i){ hs[s[i]-'a']++; } int max=0; for(int i=0;i<26;++i){ if(hs[i]>max){ max=hs[i]; } } for(int i=0;i<26;++i){ if(hs[i]==max){ cout<<char(i+'a')<<endl<<max; //第一个就是字典序最小的 break; } } return 0; } ```
查看全文
0 0 0 2
鸣蜩一 题解分享 · 2024/4/11
单词分析(编程题) - 题解
``` #include<bits/stdc++.h> using namespace std; char compare(char current,char previous){ if(current<previous){ return current; }else{ return previous; } } int main(){ vector<int>num(26,0); string s; cin>>s; char minLetter = 'z'; char currentLetter; for(auto it=s.begin();it!=s.end();it++){ if(*it>='a'&&*it<='z'){ int index = *it-'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){ currentLetter = 'a'+i; minLetter = compare(currentLetter,minLetter); } } cout<<minLetter<<"\n"<<maxFreq; } ```
查看全文
0 0 0 2
Climb1104 题解分享 · 2024/4/8
单词分析(编程题) - 题解
``` #include <bits/stdc++.h> using namespace std; int word[26]; int main() { string str; int m = 0; // 记录最大值 cin >> str; for (int i = 0; i < str.size(); i++) { word[str[i] - 'a']++; m = max(m, word[str[i] - 'a']); } for (int i = 0; i < 26; i++) { if (word[i] == m) { char ch = 'a' + i; cout << ch << endl; cout << word[i] << endl; break; } } return 0; } ```
查看全文
0 0 0 2
lingzhen 题解分享 · 2024/4/12
单词分析(编程题) - 题解
``` #include<bits/stdc++.h> using namespace std; string s; int a[30]; int main(){ cin>>s; int maxx=0; for(int i=0;i<s.size();i++){ a[s[i]-'a']++; } char x; for(int i=0;i<26;i++){ if(a[i]>maxx){ maxx=a[i];x=char(i+'a'); } } cout<<x<<endl<<maxx; } ```
查看全文
0 0 0 1
kaisyuantseng 题解分享 · 2024/4/11
单词分析(编程题) - 题解
```cpp #include <bits/stdc++.h> using namespace std; #define int long long // #define LL long long #define endl '\n' map<char, int> mp; void solve() { char c; while (cin >> c) { if (cin.eof()) break; mp[c]++; } char res1; int res2 = 0; for (char i = 'a'; i <= 'z'; i++) { if (mp[i] > res2) { res1 = i; res2 = mp[i]; } } cout << res1 << endl << res2; } signed main() { ios::sync_with_stdio(0); cin.tie(0), cout.tie(0); solve(); return 0; } ```
查看全文
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') << endl; cout << maxCount; break; } } return 0; } ```
查看全文
0 0 0 0