Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 16.02.2012, 21:06   #1
NightEagle
Пользователь
 
Регистрация: 13.03.2011
Сообщений: 31
По умолчанию "приколы" языка

Здравствуйте!
На одном из сайтов по программированию написал задачку.

Вот сама задача:
Уставшие от необычно теплой зимы, жители решили узнать, действительно ли это самая длинная оттепель за всю историю наблюдений за погодой. Они обратились к синоптикам, а те, в свою очередь, занялись исследованиями статистики за прошлые годы. Их интересует, сколько дней длилась самая длинная оттепель.

Оттепелью они называют период, в который среднесуточная температура ежедневно превышала 0 градусов Цельсия. Напишите программу, помогающую синоптикам в работе.

Входные данные

Во входном файле INPUT.TXT сначала записано число N – общее количество рассматриваемых дней (1 ≤ N ≤ 100). В следующей строке через пробел располагается N целых чисел, разделенных пробелами. Каждое число – среднесуточная температура в соответствующий день. Температуры – целые числа и лежат в диапазоне от –50 до 50.

Выходные данные

В выходной файл OUTPUT.TXT требуется вывести одно число – длину самой продолжительной оттепели, то есть наибольшее количество последовательных дней, на протяжении которых среднесуточная температура превышала 0 градусов. Если температура в каждый из дней была неположительной, выведите 0.

Код:
#include <iostream>
#include <fstream>

using namespace std;

int main()
{
    int n, a, k = 0, t = 0;
    ifstream in("input.txt");
    ofstream out("output.txt");
    in >> n;
    for (int i = 0; i < n; i++)
    {
        in >> a;
        (a < 1) ? k = 0 : k++;
        if (t < k) t = k;
    }
    out << t;
    return 0;
}
Может код и не идеален, но программа прошла все тесты.
Размер кода у меня составляет 202 символа. В списке лучших результатов эта же программа написанная на с++ составляет 119 символов.
На вопрос как это возможно, ответили что нужно знать "приколы" языка.

Может кто-нибудь рассказать про эти "приколы"? или где можно про это найти

Последний раз редактировалось NightEagle; 16.02.2012 в 22:05.
NightEagle вне форума Ответить с цитированием
Старый 16.02.2012, 22:33   #2
pproger
C++ hater
СтарожилДжуниор
 
Аватар для pproger
 
Регистрация: 19.07.2009
Сообщений: 3,336
По умолчанию

и как размер программы считается? по моим подсчетам, у тебя
Цитата:
~ $ cat main.cpp | wc -m
326
символов.

пс. а, я пробелы еще посчитал. да, 202.

инфы мало. можно ли с++0x использовать?
I invented the term Object-Oriented, and I can tell you I did not have C++ in mind. (c)Alan Kay

My other car is cdr.

Q: Whats the object-oriented way to become wealthy?
A: Inheritance

Последний раз редактировалось pproger; 16.02.2012 в 22:44.
pproger вне форума Ответить с цитированием
Старый 17.02.2012, 16:46   #3
NightEagle
Пользователь
 
Регистрация: 13.03.2011
Сообщений: 31
По умолчанию

Цитата:
Сообщение от pproger Посмотреть сообщение
и как размер программы считается? по моим подсчетам, у тебя

символов.

пс. а, я пробелы еще посчитал. да, 202.
да, пробелы не учитываются.
#include <iostream> можно убрать, не заметил его) но особо это ничего не меняет.

Цитата:
Сообщение от pproger Посмотреть сообщение
инфы мало. можно ли с++0x использовать?
думаю можно, это поможет сократить код?
NightEagle вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Вывести название соответствующей карты вида "шестерка бубен", "дама червей","туз треф" и т.п. воваава Помощь студентам 3 01.12.2011 12:50
Что такое "спецификация языка"? nicklan Помощь студентам 4 26.05.2011 00:46
при вводе на листе "магазин"- код товара появлялось "описание" товара из "склада" с "продажной ценой" aleksei78 Microsoft Office Excel 13 25.08.2009 12:04