![]() |
Вопросы по задачам на С++
Доброго времени суток, ув. форумчане! Создал себе отдельную тему так как прогнозирую решать много задачек на С++ ;)
Подскажите, как реализовать такую задачку, ато чтото никак не могу допереть: Условие Пусть n — любое натуральное число, а последовательность i1, i2, ... , in сожержит все натуральные числа от 1 до n включительно. Нарушением порядка в такой последовательности называют систему таких двух неравенств, что оправдываются: j < k и ij > ik. Если последовательность возрастает, то количество нарушений порядка равно 0. Если последовательность спадает, то такое количество равно n(n – 1)/2. Во всех остальных случаях это количество расположена между указанными величинами. Задание Установите четность количества нарушений порядка последовательности. Входящие данные В первой строке входного файла указано количество последовательностей m. Каждый из следующих m строк содержит натуральное число n и последовательность различных натуральных чисел от 1 до n включительно: i1, i2, ... , in при 2 ≤ m ≤ 100, 2 ≤ n ≤ 1 048 576. У 50 % тестов n ≤ 4096. Исходящие данные Единственная строка выходного файла должна содержать число в шестнадцатеричной системе счисления, соответствующее двоичному числу которое образовано из m символов - нулей или единиц - без пробела: k-й символ строки - это остаток от деления на 2 числа нарушений порядка k-й последовательности, заданной (k + 1)-й строкой входного файла. Пример input.dat: 5 3 1 2 3 3 2 3 1 3 1 3 2 4 2 3 4 1 4 3 4 1 2 output.sol: 6 Объяснение: (00110)2 = (6)16 |
Цитата:
по сути - где попытки собственного решения? |
Hector, я и не прошу уже готовое решение, я прошу только идею и прекрасно понимаю что готовенькое ждать не стоит
я вобщето планирую только спрашивать то что непонятно, а не трубить "Помогите! Сделайте!" а тему создал, потомучто как писалось выше "прогнозирую решать много задачек на С++" и на каждную мелочь по задачке- отдельная тема? только буду засорять форум. я не понимаю, почему Вы так сразу категорично настроены против меня, я же не прошу уже готовые коды решений |
Prof, как вы правильно выразились,
Цитата:
-- Почитай, поразмышлял. В чем возникла проблема? Задача в достаточной степени линейна. Надо только внимательно отнестись к переменным,и правильно понять, что ожидается на выходе. Все необходимое расписано уже в условии. -- А кстати, ради интереса. Попробуй составить алгоритм используя "нарезку слов и цитат" из задания. |
Сделал через сортировку, то есть сколько раз переставило соседние числа, столько и нарушений. Осталось только перевести из dec в hex.
Двоичный код получаю вот таким циклом: Код:
for(i=1;i<=y;i++) Updated: сделал, кому интересно: Код:
for(i=y;i>=1;i--) |
Ещё один вопрос. Есть такая программка для переведения из 2 системы счисления в 16:
Код:
#include <stdio.h> Код:
#include <stdio.h> |
Prof, а можно спросить?
а вот это Цитата:
Конкретно вот это: void ? Что це за зверь? |
lxa85, я конечно чайник, но насколько понимаю это спецификатор типа который не возвращает значения (не требует return).
|
|
Цитата:
В каком месте программы мы должны получить результат? ---- Посмотрел на код еще раз. Я его не понимаю, чисто зрительно в нем есть ошибка. Какие-то resultы, какие-то _tmain, циклы while вообще не понятно что делает. Как это все вообще должно работать? Prof, перепиши еще раз, с принятыми нормами обозначения и с соблюдением логики выполнения. В противном случае тебе придется расписывать логику выполнения в комментариях, т.к. сейчас, понять какая переменная куда и зачем отправляется я не могу. |
Ребят помогите пожалуйста ,модуль пишу только задали,у кого -то код такой ?
v v v v "Определение матрицы смежности графа по заданной матрице инцидентности" или кто-то делал такую прогу код ужен очень |
Время: 20:47. |
Время: 20:47.
© OSzone.net 2001-