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

Олимпиадная задача с тимуса №1209 - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Умножение матриц через перегруженный оператор http://www.cyberforum.ru/cpp-beginners/thread1220407.html
функции сложения и вычитания матриц работают правильно, в умножении - выдаёт ошибку сборки
C++ Объединить ветки оператора выбора Ребят, нужна помощь. Последние две ветки необходимо объединить в одну, начиная с c<0. Тоесть если после запятой нет цифр, то... Заранее большое спасибо #include "stdafx.h" #include <stdlib.h>... http://www.cyberforum.ru/cpp-beginners/thread1220397.html
Интегрирование методом левых прямоугольников C++
Доброго времени суток, дорогие программисты. В универе дали задание, а я С++ не особо шарю, помогите пожалуйста выполнить) Задание: "В прикладной программе проводится функция f(x)=cos(x), пределы...
Получить таблицу значений функции C++
Получить таблицу значений функции y=th(x) при x, изменяющемся от -1 до 1 с шагом 0.1. Вычисление значений функции оформить в виде функции. Результаты представить в виде таблицы. Функция...
C++ Прием, передача и сравнение последовательности Баркера http://www.cyberforum.ru/cpp-beginners/thread1220379.html
Подскажите пожалуйста.Пишу программу клиент-сервер. Клиент передает м-последовательность или последовательность Баркера, сервер ее принимает и проверяет правильная ли последовательность пришла, для...
C++ Найти слово, начинающееся буквой "а" и оканчивающееся буквой "я" дана строка. найти какое-нибудь слово, начинающееся буквой а и оканчивающееся буквой я. если таких слов нет, то сообщить об этом подробнее

Показать сообщение отдельно
HighPredator
5541 / 1854 / 346
Регистрация: 10.12.2010
Сообщений: 5,472
Записей в блоге: 2
01.07.2014, 13:59
Я предлагаю решение вообще в другом ключе: вычисляйте позиции 1 и 0. Так как с каждым увеличением разряда прибавляется только один 0.
Код
int GetDigit(const int pos)
{
  int delta = 0;
  int start = 1; // позиция 1
  int end = 1;  // конец числа
  while pos not in [start..end]
  {
     delta++;
     start = end + 1;
     end = start + delta;
  }
  if pos == start return 1;
  else return 0;
}
1
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru