Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- ld mean[MX], stdev[MX];
- ld prob(int r, ld val) {
- ld res = -log(4 * acos(0.0)) / 2; res -= log(stdev[r]);
- res -= ((val-mean[r])/stdev[r]) * ((val-mean[r])/stdev[r]) / 2;
- return res;
- }
- void solve() {
- int N; cin >> N;
- int M; cin >> M;
- int B; cin >> B;
- ld A[N][M]; F0R(i, N) F0R(j, M) cin >> A[i][j];
- F0R(i, M) {
- F0R(j, N) {
- mean[i] += A[j][i];
- }
- mean[i] /= N;
- F0R(j, N) {
- stdev[i] += (A[j][i] - mean[i]) * (A[j][i] - mean[i]);
- }
- stdev[i] /= N;
- stdev[i] = sqrt(stdev[i]);
- }
- vector<pair<ld, int> > vals;
- F0R(i, N) {
- ld p1 = 0, p2 = 0;
- F0R(j, M) {
- p1 += prob(j, A[i][j]);
- p2 += prob(j, A[i][M-1-j]);
- }
- vals.pb({p1-p2, i});
- }
- sort(all(vals));
- F0R(i, B) {
- cout << vals[i].s + 1 << nl;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement