Форум программистов, компьютерный форум CyberForum.ru

Порядковая статистика - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ undefined reference to 'std::basic http://www.cyberforum.ru/cpp-beginners/thread652938.html
Братцы выручайте Сейчас с ума сойду... Но сначала исходники main.cpp #include <iostream> #include <fstream> #include <iomanip>
C++ Вывод string из list Есть некий класс. class human { public: string name; int age; }; int main () http://www.cyberforum.ru/cpp-beginners/thread652915.html
do while C++
Помогите , пожалуйста . Как сделать проверку на символы ? А то программа начитает зацикливаться , например do { cout <<"height of the fall H = "; cin >> H; } while (H <= 0 || H > 10000);
C++ 3 файла: 1 - хэдер-файл и 2 простых .срр
Всем привет! Помогите плз понять 1 вещь. У меня 3 файла 1 header, 2 - .cpp. В хэдере описание класса с прототипами функций. В 1-м срр-файле описание функций (по прототипам, объявленным в хэдер файле). Во 2-м срр-файле используются функции-методы данного класса.
C++ Декартов лист http://www.cyberforum.ru/cpp-beginners/thread652902.html
Помогите реализовать класс. Я новичок и пытаюсь разобраться :) и если кому не сложно, то напишите какие нибудь подсказки по этой задачи)
C++ Как вывести матрицу из файла Уважаемые форумчане! было дано следующее задание:решить сис-му лиейых алгебраических уравнений методом Гаусса. Код написал, прога работала, но потом добавили дополительное задание, нужно считывать матрицу из файла, а вот как это сделать уже не знаю. Помогите кто может. #include <iostream> #include <iomanip> #include<ctime> #include<clocale> #include<cmath> using std::cout; using... подробнее

Показать сообщение отдельно
Domolaz
2 / 2 / 1
Регистрация: 16.09.2012
Сообщений: 16
16.09.2012, 19:54     Порядковая статистика
http://acm.timus.ru/problem.aspx?space=1&num=1306
Подскажите, пожалуйста, ошибку в алгоритме, не могу найти.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
#include <iostream>
#include <vector>
#include <algorithm>
 
using namespace std;
 
int partition(vector<int> &a,int l,int r){
    swap(a[l+rand()%(r-l+1)],a[r]);
    int mid = a[r];
    int i=l-1;
    for(int j=l;j<r;j++)
        if(a[j]<mid)
            swap(a[++i],a[j]);
    swap(a[i+1],a[r]);
    return i+1;
}
 
int get_st(vector<int> &a,int l,int r,int k){
    if(r==l) return a[r];
    int mid = partition(a,l,r);
    int c_el = mid -l+1;
    if(k==c_el)
        return a[mid];
    if(c_el>k)
        return get_st(a,l,mid-1,k);
    else
        return get_st(a,mid+1,r,k-c_el);
}
 
 
int main(){
    int n;
    cin>>n;
    vector<int> a(n);
    for(int i=0;i<n;i++){
        cin>>a[i];
    }
    double res;
    if((n&1)==1)
        res = get_st(a,0,n-1,(n+1)/2);
    else {
        res = (get_st(a,0,n-1,n/2)+get_st(a,0,n-1,n/2+1)+0.0)/2;
    }
    cout.precision(10);
    cout << fixed;
    cout<<res;
    return 0;
}
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 01:25. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru