暑假集训 7月11日
CF D
#include <bits/stdc++.h> using namespace std; typedef long long ll; const int N=1e5+10; int cnt[30]; signed main() { // ios::sync_with_stdio(0); // cin.tie(0); // cout.tie(0); int t; cin>>t; while (t--) { string s; cin>>s; int p; cin>>p; int len=s.size(); ll sum=0; memset(cnt,0,sizeof cnt); for (int i=0;i<len;i++) { sum+=(s[i]-'a'+1); cnt[s[i]-'a'+1]++; } if (sum<=p)cout<<s<<"\n"; else { int hh=26; int flag=1; while (sum>p) { if (cnt[hh]) { cnt[hh]--; sum-=(hh); } else { hh--; } } int num=0; for (int i=0;i<len;i++) { if (cnt[s[i]-'a'+1]) { num++; cout<<s[i]; cnt[s[i]-'a'+1]--;//忘记加'a'了,其次忘记减减了 } } string b=""; if (num)cout<<b; cout<<"\n"; } } return 0; }
VJ I - Older Brother
#include <bits/stdc++.h> using namespace std; typedef long long ll; const int N=1e6+10; unordered_map<ll,ll>prime; signed main() { ll q; while (cin>>q) { prime.erase(prime.begin(),prime.end()); if (q==1) { puts("no"); } else { for (ll i=2; i<=q/i; i++) { while (q%i==0) { q/=i; prime[i]++; } } if (q>1)prime[q]++; if (prime.size()==1)puts("yes"); else puts("no"); } } return 0; }

浙公网安备 33010602011771号