Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 11, средняя оценка - 4.64
serik13
3 / 3 / 0
Регистрация: 04.01.2011
Сообщений: 71
#1

Задача Клавиатура - C++

23.09.2011, 18:34. Просмотров 1537. Ответов 1
Метки нет (Все метки)

Нужна реализация в С++ , заранее спс

Задача Клавиатура

Имя входного файла: keyboard.in
Имя выходного файла: keyboard.out
Максимальное время работы на одном тесте: 2 секунды
Максимальный объем используемой памяти: 64 мегабайта

Всем известно, что со временем клавиатура изнашивается, и клавиши на ней начинают залипать. Конечно, некоторое время такую клавиатуру еще можно использовать, но для нажатий клавиш приходиться использовать большую силу.
При изготовлении клавиатуры изначально для каждой клавиши задается количество нажатий, которое она должна выдерживать. Если знать эти величины для используемой клавиатуры, то для определенной последовательности нажатых клавиш можно определить, какие клавиши в процессе их использования сломаются, а какие – нет.

Требуется написать программу, определяющую, какие клавиши сломаются в процессе заданного варианта эксплуатации клавиатуры.

Формат входных данных
Первая строка входного файла содержит целое число n (1 ≤ n ≤ 100) – количество клавиш на клавиатуре. Вторая строка содержит n целых чисел – с1, с2, … , сn, где сi (1 ≤ сi ≤ 100000) – количество нажатий, выдерживаемых i-ой клавишей. Третья строка содержит целое число k (1 ≤ k ≤ 100000) – общее количество нажатий клавиш, и последняя строка содержит k целых чисел pj (1 ≤ pj ≤ n) – последовательность нажатых клавиш.

Формат выходных данных
В выходной файл необходимо вывести n строк, содержащих информацию об исправности клавиш. Если i-ая клавиша сломалась, то i-ая строка должна содержать слово “yes” (без кавычек), если же клавиша работоспособна – слово “no”.
Пример входных и выходных данных
keyboard.in
5
1 50 3 4 3
161 2 3 4 5 1 3 3 4 5 5 5 5 5 4 5
keyboard.out
yes
no
no
no
yes

Есть на Паскале
Var
c : array [1..100] of longint;
n, i, k, t : longint;
f : text;
Begin
Assign(f,'keyboard.in');
Reset(f);
ReadLn(f,n);
For i:=1 to N do
Read(f,c[i]);
Readln(f,k);
For i:=1 to k do
begin
Read(f,t);
Dec(c[t]);
end;
Close(f);
Assign(f,'keyboard.out');
Rewrite(f);
For i:=1 to N do
If c[i]>=0 Then
Writeln(f,'no')
Else Writeln(f,'yes');
Close(f);
End.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
23.09.2011, 18:34     Задача Клавиатура
Посмотрите здесь:

Клавиатура - C++
Как можно отследить нажатую клавишу и написать вместо неё другую

Экранная клавиатура - C++
Надо сделать так, чтобы нажимая мышкой кнопки на форме(например "4") программа записывала их в запущеный текстовый редактор(блокнот). В...

Задача "Клавиатура" - Java SE
Для данной буквы латинского алфавита нужно вывести справа стоящую букву на стандартной клавиатуре. При этом клавиатура замкнута, т.е....

Клавиатура - Delphi
Такой вопрос.как сделать так,что бы например в компоненте edit1 при нажатии энтера прекращался ввод..именно как узнать был ли нажат...

Клавиатура - Pascal
(Время: 1 сек. Память: 16 Мб Сложность: 11%) Для данной буквы латинского алфавита нужно вывести справа стоящую букву на стандартной...

c++ QT клавиатура - C++ Qt
Подскажите как можно запретить действие при нажатие клавиши,ну или сделать другое событие. У меня при нажатие клавиши F10 перестает...

Клавиатура - C++ Builder
как узнать какая сейчас расладка тоесть какой сейчас язык.? переключать можно так LoadKeyboardLayout("00000409", KLF_ACTIVATE); //...

Клавиатура - Visual Basic .NET
Всем доброго времени суток! И снова я со своими глупыми вопросами :-) Вобщем у меня возникла необходимость написать слдующую...

Клавиатура - C++ Builder
Кто в курсе как отключить задержку для автоматического повторения нажатия клавиш. Как в играх нет задержки Нажал-действие с одинаковой...

клавиатура - Windows 7
клавиатура сама по себе включатся набирает символы не работают некоторые клавиши backspace , delee не удаляет цифры и буквы ...

Клавиатура - C#
Подскажите пожалуйста, как сделать так, чтобы при нажатии определенной клавиши на клавиатуре (например "z"), нажималась кнопка типа...

Клавиатура - OpenGL
Пытаюсь научится создавать программы на visual c++. Скачал чужой код который создаёт красный квадрат. #include "stdafx.h" #include...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
diagon
Higher
1928 / 1194 / 49
Регистрация: 02.05.2010
Сообщений: 2,925
Записей в блоге: 2
23.09.2011, 18:55     Задача Клавиатура #2
Мое решение этой задачи:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#include <fstream>
 
int arr[101], n, i;
 
int main()
{
    std::fstream v("input.txt"), o("output.txt", std::ios::out);   
    
    for (v >> n; i < n; )
        v >> arr[i++];
    
    for (v >> i; v >> i;)
        --arr[i-1];
    
    for (i = 0; i < n; )
        o << (arr[i++] < 0 ? "yes " : "no ");
}
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru