Регистрирайте се
| Предишната тема :: Следващата тема |
| Автор |
Съобщение |
Elite Начинаещ
Регистриран на: 10 Apr 2009 Мнения: 5
 
|
Пуснато на: Fri Apr 10, 2009 10:54 pm Заглавие: Алгоритъм за четно число |
|
|
Както всеки ден, Ваньо е пред компютъра. Играе една простичка игра и се
ядосва, че все губи срещу „една щайга чипове”! Помогнете му, в името на Естествения
Интелект! Ето правилата на играта. Има N обекта, където N е нечетно естествено
число, не по-малко от 3. Играещите се редуват, като всеки взема по няколко обекта на
ход (винаги трябва да се вземе поне един обект, но не повече от K). В един момент
обектите свършват. Всеки вижда какво е събрал. Печели този, който е събрал четен
брой обекти. Просто, нали?
Преди самата игра, компютърът избира K, след това Ваньо избира N. Играта
започва и компютърът играе пръв. Напишете програма even, която при избрано от
компютъра число K да подскаже на Ваньо как да избере N така, че да има шанс срещу
перфектно играещия компютър-противник!
Вход
От стандартния вход се въвежда един ред, на който е записано числото K,
избрано от компютъра, като K > 1 и има не повече от 15 цифри.
Изход
Запишете на стандартния изход един ред с 10 различни стойности за N,
разделени с интервал нечетни естествени числа, по-големи от 3, но с не повече от 18
цифри, при които Ваньо би имал шанс (ако играе умно) срещу компютъра, който
никога не допуска грешки.
Пример
Вход:
2
Изход:
5 9 13 17 21
Немога да схвана алгоритама за решаване.
| Код: | if ( k % 2 == 0 )
k = k / 2;
alg = 1 + (k+1) * 2; |
Първото число се намира по 1 + (k+1) * 2 (1) ,а следващите като към (1) добавим (k+1) * 2.Защо? |
|
| Върнете се в началото |
|
 |
Реклама
|
Пуснато на: Заглавие: Реклама |
|
|
|
|
|
| Върнете се в началото |
|
 |
gsinekliev Начинаещ

Регистриран на: 03 Jun 2006 Мнения: 62 Местожителство: Пазарджик
    гласове: 5
|
Пуснато на: Sat Apr 11, 2009 2:48 pm Заглавие: |
|
|
| По принцип има форум за информатика: http://www.math10.com/informatika/Ако искаш постни пълния код тук или на ЛС, защото поне така аз не мога да го схвана този алгоритъм. |
|
| Върнете се в началото |
|
 |
Elite Начинаещ
Регистриран на: 10 Apr 2009 Мнения: 5
 
|
Пуснато на: Sat Apr 11, 2009 9:10 pm Заглавие: |
|
|
| Код: | #include<iostream>
using namespace std;
int main()
{
int i,k,N;
cin >>k;
if ( k % 2 == 0 )
k = k / 2;
N = 1 + (k+1) * 2;
cout << N;
for ( i = 1; i < 10; i++ )
{
N = N+(k+1)*2;
cout <<" "<< N;
}
cout << endl;
system("pause");
return 0;
} |
|
|
| Върнете се в началото |
|
 |
|
|
Не Можете да пускате нови теми Не Можете да отговаряте на темите Не Можете да променяте съобщенията си Не Можете да изтривате съобщенията си Не Можете да гласувате в анкети You cannot attach files in this forum Може да сваляте файлове от този форум
|
|