码迷,mamicode.com
首页 > 其他好文 > 详细

gym-101343E-Abdalrahman Ali Bugs

时间:2017-07-20 23:54:25      阅读:867      评论:0      收藏:0      [点我收藏+]

标签:bug   bit   最小   main   str   计算   ons   logs   abd   

 

 1 /*
 2 寻找x使得目标函数的值最小。
 3 先统计字符串每个字母的出现次数,然后暴力穷举所有可能的x
 4 每个都计算一次目标函数,取最小的即可。
 5 */
 6 #include <bits/stdc++.h>
 7 using namespace std;
 8 const int inf=0x3f3f3f3f;
 9 string s;
10 int scnt[30];
11 int main()
12 {
13     cin>>s;
14     int maxn=0;
15     int len=s.length();
16     for(int i=0;i<len;i++)
17     {
18         scnt[s[i]-97]++;
19         if(maxn<scnt[s[i]-97])
20             maxn=scnt[s[i]-97];
21     }
22     int minn=inf;
23     int ans=2;
24     for(int i=2;i<=maxn;i++)
25     {
26         long long  t=0;
27         for(int j=0;j<26;j++)
28             t+=(scnt[j]%i)*(long long )scnt[j];
29         if(minn>t)
30         {
31             minn=t;
32             ans=i;
33         }
34     }
35     cout<<ans<<endl;
36 }

 

gym-101343E-Abdalrahman Ali Bugs

标签:bug   bit   最小   main   str   计算   ons   logs   abd   

原文地址:http://www.cnblogs.com/kearon/p/7214829.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!