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

Олимпиадная задача с тимуса №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++ Найти слово, начинающееся буквой "а" и оканчивающееся буквой "я" дана строка. найти какое-нибудь слово, начинающееся буквой а и оканчивающееся буквой я. если таких слов нет, то сообщить об этом подробнее

Показать сообщение отдельно
dzrkot
zzzZZZ...
523 / 353 / 54
Регистрация: 11.09.2013
Сообщений: 2,025
01.07.2014, 15:58

Не по теме:

я вообще в шоке с таких заданий, особенно после 3 часов сна, откуда вы эти формулы берёте...


быдлокод и вроде работает
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#include <iostream>
using namespace std;
int main()
{
  int y;
  cin>>y;
  char s;
  for(int i=0;i<y;)
    {
      s='1';
      i++;
      int t=i;
      if(i==y)
          break;
      for(int j=0;j<t-1;j++,i++)
        {
        s='0';
        if(i==y)
          break;
        }
    }
cout<<s;
}
Добавлено через 2 минуты
Цитата Сообщение от IrineK Посмотреть сообщение
Рассмотрим строку
11010010001000 и т.д.
пока будем нумеровать с 0
Единицы стоят на позициях
0 = 0
0+1= 1
0+1+2 = 3
0+1+2+3 = 6
0+1+...+n = n(n+1) / 2
Пусть k - позиция единицы, т.е. n(n+1) / 2 = k
Найдем соответствующее n, решив квадратное уравнение
n^2 + n - 2k = 0
D = 1 + 8k (вот и 8)
http://www.cyberforum.ru/cgi-bin/latex.cgi?n = (-1\pm \sqrt{1+8k})/2
Поскольку n>0
http://www.cyberforum.ru/cgi-bin/latex.cgi?n = (\sqrt{1+8k}-1)/2
Теперь внесем поправку на нумерацию k не от 0, а с 1
http://www.cyberforum.ru/cgi-bin/latex.cgi?n = (\sqrt{1+8(k-1)}-1)/2
http://www.cyberforum.ru/cgi-bin/latex.cgi?n = (\sqrt{8k-7}-1)/2
0
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru