Школа программиста

Забыли пароль?
[задачи] [курсы] [олимпиады] [регистрация]
Логин:   Пароль:    
Скрыть меню
О школе
Правила
Олимпиады
Фотоальбом
Гостевая
Форум
Архив олимпиад
Архив задач
Состояние системы
Рейтинг
Курсы
Новичкам
Работа в системе
Курсы ККДП
Дистрибутивы
Статьи
Ссылки


 
Вернуться
Тема: Здравствуйте помогите пожалуйста решить любую задачу со сложностью в 80%! Заранее благодарен)
1
  1  Онуфриев Константин, 06 июня 2012 г. 14:03:38
      а у тебя есть 24 задача
ВЫРУБКА ДЕРЕВЬЕВ
  2  Онуфриев Константин, 06 июня 2012 г. 14:02:56
      17 задача
ПОЛЕ ЧУДЕС
#include <stdio.h>

unsigned int n;
int * list;

bool Check(int step)
{
unsigned int i = 0;
while ((list[i%step] == list [i]) && (i<n))
i++;
if (i==n) return true; else return false;
}

int main()
{
FILE *f = fopen("input.txt", "r");
fscanf(f, "%d", &n);
list = new int [n];
for (int i = 0; i<n; i++)
fscanf(f, "%d", & list [i]);
fclose(f);

n--;
int r = n;

for (int i = 1; i<n; i++)
{
if (!(n%i))
{
if (Check(i))
{
r = i;
break;
}
}
}

f = fopen("output.txt", "wt");
fprintf(f, "%d", r);
fclose(f);
return 0;
}
1

Чтобы оставить сообщение необходимо зарегистрироваться и авторизоваться!

Красноярский краевой Дворец пионеров, (c)2006 - 2026, ИНН 246305493507, E-mail: admin@acmp.ru