陕西培训网站建设,外海网站如何做网站的推广,织梦 公司网站模板,产品广告设计Gym100187B \(n\)#xff1a;表示字符的种类#xff1b;\(a_i\)#xff1a;表示单词i的个数#xff1b;\(Len\)#xff1a;表示串的长度#xff1b; 先考虑一种单词\(a_i\)放在一个固定位置p对答案的贡献: 整一个串的全排类为#xff1a;\[P \frac{Len!}{a_1!a_2!...a_… Gym100187B \(n\)表示字符的种类\(a_i\)表示单词i的个数\(Len\)表示串的长度 先考虑一种单词\(a_i\)放在一个固定位置p对答案的贡献: 整一个串的全排类为\[P \frac{Len!}{a_1!a_2!...a_n!}\] 固定\(a_i\)的排列为\[P_i \frac{(Len-1)!}{a_1!a_2!...(a_i-1)!..a_n!}\] 对于最终答案贡献就是\[ans_{i,p} \frac{P_i^2}{P^2}\] 则有\[ans_i \sum_{p1}^{Len} ans_{i,p} \frac{Len P_i^2}{P^2} \frac{a_i^2}{Len}\] 下面只需枚举字符求和即可\[ans \sum_{i1}^{n}ans_i \sum_{i1}^{n} \frac{a_i^2}{Len}\] #include bits/stdc.h
#define rep(i,a,b) for(int ia;ib;i)
#define per(i,a,b) for(int ia;ib;--i)
#define pb push_back
#define PII pairint,int
typedef long long ll;
const int N 1e5 7;
const int inf 0x3f3f3f3f;
using namespace std;
int n,k,M[666],num;
char s[200007];
double ans 0;
int main() {scanf( %s,s1);nstrlen(s1);rep(i,1,n) M[s[i]-a];rep(i,0,25) {ans (1.0*M[i]*M[i])/n;}printf(%.10f\n,ans);return 0;
} 转载于:https://www.cnblogs.com/RRRR-wys/p/9460637.html