5 条题解
-
4
一道很好练习stl的题目 本题主要是哈希表和vector的综合应用 (没clear卡我20分钟)
#include <bits/stdc++.h> using namespace std; unordered_map<char,int> h; vector<int> n; bool is_prime(int a) { if(a == 1) return false; for(int i=2;i<=sqrt(a);i++) if(a%i == 0) return false; return true; } int is_lucky_word(string s) { h.clear(); n.clear(); int mm = 0; for(auto x:s) h[x]++; for(auto x:h) if(x.second!=0) n.push_back(x.second); sort(n.begin(),n.end()); mm = n[n.size()-1]-n[0]; if(is_prime(mm)) return mm; else return 0; } int main() { string s; cin >> s; if(is_lucky_word(s)!=0) cout << "Lucky Word" << endl << is_lucky_word(s); else cout << "No Answer" << endl << 0; return 0; }
-
2
python的哦~
su=['2', '3', '5', '7', '11', '13', '17', '19', '23', '29', '31', '37', '41', '43', '47', '53', '59', '61', '67', '71', '73', '79', '83', '89', '97'] w=input() #w="error" x={} for i in w: if i not in x: x[i]=1 else: x[i]+=1 max=0 for i in x: ii=x[i] if ii>max: max=ii min=101 for i in x: ii=x[i] if ii<min: min=ii cha=str(max-min) if cha in su: print("Lucky Word") print(cha) else: print("No Answer") print("0")
-
2
#include<bits/stdc++.h> using namespace std;
int main() { string s; cin>>s; int len=s.length(); int a[26]={0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}; for(int i=0;i<=len-1;i++) { if(s[i]'a') a[0]++; if(s[i]'b') a[1]++; if(s[i]'c') a[2]++;; if(s[i]'d') a[3]++; if(s[i]'e') a[4]++; if(s[i]'f') a[5]++; if(s[i]'g') a[6]++; if(s[i]'h') a[7]++; if(s[i]'i') a[8]++; if(s[i]'j') a[9]++; if(s[i]'k') a[10]++; if(s[i]'l') a[11]++; if(s[i]'m') a[12]++; if(s[i]'n') a[13]++; if(s[i]'o') a[14]++; if(s[i]'p') a[15]++; if(s[i]'q') a[16]++; if(s[i]'r') a[17]++; if(s[i]'s') a[18]++; if(s[i]'t') a[19]++; if(s[i]'u') a[20]++; if(s[i]'v') a[21]++; if(s[i]'w') a[22]++; if(s[i]'x') a[23]++; if(s[i]'y') a[24]++; if(s[i]'z') a[25]++; } int maxn=0,minn=9999; for(int i=0;i<=25;i++) { if(a[i]0) { continue; } if(a[i]!=0) { maxn=max(maxn,a[i]); minn=min(minn,a[i]); } } int k=maxn-minn; int ans=0; if(k0||k1) { cout<<"No Answer"<<endl; cout<<0; return 0; } for(int i=2;i<k;i++) { if(k%i0) { ans++; } } if(ans==0) { cout<<"Lucky Word"<<endl; cout<<k; } else { cout<<"No Answer"<<endl; cout<<0; }
return 0;
}其实也不多
-
2
#include<bits/stdc++.h> using namespace std; int main() { string s; cin>>s; int flag=0,len=s.length(),maxn=-999,minn=999,k=1,c,d=1; for(int i=0;i<len;i++) { // cout<<s[i]<<endl; for(int j=i+1;j<len;j++) { if(s[i]==s[j]) { d++; break; } } if(d>maxn) { maxn=d; d=1; } } cout<<maxn;//最大数 for(int i=0;i<len;i++) { for(int j=i+1;j<len;j++) { if(s[i]==s[j]) { k++; break; } } if(k<minn) { minn=k; k=1; } } cout<<minn;//最小数 // c=maxn-minn; // int n=1000; // int a[1001]={0}; // for(int i=2;i<=n;i++) // { // a[i]=i; // } // for(int i=2;i<=n;i++) // { // for(int j=2;j<=sqrt(i);j++) // { // if(i%j==0) // { // a[i]=0; // break; // } // // } // if(a[i]!=0)//质数判断 // { // if(c==a[i]) // { // cout<<"Lucky Word"<<endl<<c; // flag=1; // } // } // } // if(flag!=1)cout<<"No Answer"<<endl<<0; }
最大数模块有问题
-
-1
#include<bits/stdc++.h> using namespace std; string s; int a[27],len,maxn=1,minn=100; bool f(int x){ if(x<2){ return false; } for(int i=2;i*i<=x;i++){ if(x%i==0){ return false; } } return true; } int main(){ cin>>s; len=s.length(); for(int i=0;i<len;i++){ a[(int)(s[i]-'a'+1)]++; } for(int i=1;i<=26;i++){ if(a[i]!=0){ maxn=max(maxn,a[i]); minn=min(minn,a[i]); } } if(f(maxn-minn)){ cout<<"Lucky Word\n"<<maxn-minn; } else{ cout<<"No Answer\n0"; } return 0; }
- 1
信息
- ID
- 265
- 时间
- 1000ms
- 内存
- 256MiB
- 难度
- 7
- 标签
- 递交数
- 1585
- 已通过
- 405
- 上传者