Т.е. на языке, скажем C++, это будет выглядеть так:
double res = exp((1/n) * log(x));
Блог о математике, программировании, алгоритмах. И немного о работе операционной системы Linux.
double res = exp((1/n) * log(x));
void getPartition(unsigned n, unsigned m) { if (n < m) { throw out_of_range("N must be greater then M"); } unsigned sum = 0; vector< unsigned > partition; partition.resize(m); // заполнение массива случайными значениями for (unsigned i = 0; i < m; i++) { partition[i] = rand() % n; } partition[partition.size() - 1] = n; // сортировка sort(partition.begin(), partition.end()); // вычитаение for (unsigned i = m - 1; i > 0; i--) { partition[i] = partition[i] - partition[i - 1]; } int diff = 0; // балансировка do { for (unsigned i = 0; i < m; i++) { if (partition[i] < 1) { partition[i]++; diff--; } if (diff < 0) { if (partition[i] > 1) { partition[i]--; diff++; } } } } while (diff != 0); // вывод на экран вместе с суммой всех элементов для проверки for (unsigned i = m - 1; i > 0; i--) { cout << partition[i] << " "; sum += partition[i]; } sum += partition[0]; cout << partition[0] << " " << sum; cout << endl; }
sudo apt-get install xrdpПосле этого, мы уже можем подключаться к нашему серверу, но по-умолчанию используется протокол VNC. С этим видом подключения у меня возникли проблемы переключения раскладок клавиатуры (по умолчанию удаленная сессия видела только одну раскладку en_US). Настроить переключение удалось только с бубном и через IBus, а не через xkb. К тому же подключение более чем 5 машин вешало сеть. Я решил по-пробовать rdp.
svn://server1.xrdp.org/srv/svn/repos/main/x11rdp_xorg71Итак, качаем исходник куда-нибудь, а потом собираем.
cd ~/ mkdir temp cd temp svn co svn://server1.xrdp.org/srv/svn/repos/main/x11rdp_xorg71 cd x11rdp_xorg71 sudo mkdir /opt/x11 sudo ./buildx.sh /opt/x11В последней строчке мы сказали собирающему скрипту, чтобы он положил все собранное в каталог /opt/x11. У меня во время сборки скрипт вывалился с ошибкой и пожаловался, что нет библиотеки zlib. Ставим:
sudo apt-get install zlib1g-devи запускаем скрипт заново. Он не будет повторять ту работу, что уже сделал.