2020 CCPC Wannafly Winter Camp Day 2 Div. 1 & 2 - A 토 미의 문자열 [구조, 수학]
제목 설명
토 미 는 문자열 이 하나 있 는데, 그 는 자주 꺼 내 서 논다.이날 영어 시간 에 그 는 모음 자모 a, e, i, o, u {a, e, i, o, u} a, e, i, o, u 와 반모음 y {y} y 를 배 웠 다."이 자모 들 은 매우 중요 합 니 다!" 라 고 토 미 는 이렇게 생각 했다. "그럼 제 가 무 작위 로 키 꼬치 를 뽑 으 면 그 안의 모음 이 기대 보다 얼마나 클 까요?" 그래서 토 미 에 대한 문자열 을 구 해 보 세 요. 무 작위 로 키 꼬치, 모음 (a, e, i, o, u, y) (a, e, i, o, u, y) (a, e, i, o, u, y) (a, o, u, y) 자모 가 하위 꼬치 의 길 이 를 차지 하 는 것 에 대한 기 대 는 얼마 입 니까?
입력 설명:
길이 가 10.610 ^ 6 106 을 넘 지 않 는 소문 자 만 포함 하 는 문자열, 즉 토 미의 문자열 을 읽 습 니 다.
출력 설명:
출력 에 필요 한 기대 치 는 상대 적 (절대) 오차 가 10 - 6 10 ^ {- 6} 10 - 6 을 초과 하지 않도록 요구 합 니 다.
입력
legilimens
출력
0.446746032
제목
해제
AC-Code
#include
#define ll long long
using namespace std;
const int maxn = 1e6 + 10;
string str;
ll sum[maxn];
ll f[maxn];
int main(){
while(cin >> str){
int n = str.length();
double ans = 0;
for(int i = 0; i < n; ++i){
if(str[i] == 'a' || str[i] == 'e' || str[i] == 'i' || str[i] == 'o' || str[i] == 'u' || str[i] == 'y')
sum[i+1] = sum[i] + 1;
else
sum[i+1] = sum[i];
}
ans = f[1] = sum[n];
for(int i = 1; i < n; ++i){
f[i+1] = f[i] + sum[n-i] - sum[i];
ans += 1.0*f[i+1]/(i+1);
}
ans = ans / (n*(n+1LL)/2.0);
printf("%.9f
", ans);
}
return 0;
}
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
[HDU 5608] functionProblem Description There is a function f(x),which is defined on the natural numbers set N,satisfies the following eqaut...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.