Форум программистов, компьютерный форум, киберфорум
Shell, Bash
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.63/8: Рейтинг темы: голосов - 8, средняя оценка - 4.63
0 / 0 / 0
Регистрация: 18.03.2015
Сообщений: 21

Можно ли ускорить работу программы?

18.03.2015, 23:52. Показов 1632. Ответов 4
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Bash
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
#!/bin/bash
bills=([0]=1 [1]=2 [2]=3 [3]=4 [4]=5 [5]=6)
declare -a am=( $(for i in {1..10001}; do echo 0; done) )
read T
((m = 0))
while(( m < T ))
  do 
  read N
for((i=0;i < 6;i++)) do 
  ((am[bills[i]]=1))
    done  
for((i=10;i<10001;i=i+10))
  do
    for((j=0; j<6; j++))  
    do
    if((am[i+bills[j]] == 0 && i+bills[j]<10001)) 
    then ((am[i+bills[j]]=am[i]+1))
    fi done 
   done 
if((am[N] != 0))
then
  echo ${am[N]}
else echo -1
fi
((m=m+1)) 
done
0
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
18.03.2015, 23:52
Ответы с готовыми решениями:

Подскажите, как можно ускорить работу программы
Условие: Первая строка входных данных содержит натуральное число N - количество элементов массива (1 ≤ N ≤ 1000). Следующая...

Ускорить работу программы
// 1-й вариант using System; using System.Net; using System.Collections.Generic; using System.Linq; namespace Les8._13...

Ускорить работу программы
Лексикографический порядок чисел (Время: 1 сек. Память: 16 Мб Сложность: 31%) Натуральные числа от 1 до N упорядочены...

4
 Аватар для Amet13
1362 / 1074 / 110
Регистрация: 16.03.2012
Сообщений: 4,543
19.03.2015, 03:59
Можно, переписав ее на другой язык, например python.
0
Эксперт NIX
 Аватар для Marinero
2796 / 2039 / 682
Регистрация: 02.03.2015
Сообщений: 6,509
19.03.2015, 13:36
Много неоптимальных операций как для bash (например: 3 строка - объявления переменных как и массивов обычно не требуется). Изложите общую задачу — посмотрим что можно сделать.
0
0 / 0 / 0
Регистрация: 18.03.2015
Сообщений: 21
19.03.2015, 14:36  [ТС]
Marinero, В банкомате имеются в достаточном количестве купюры 10, 20 50, 100, 200 и 500 . Найти минимальное количество купюр, которое необходимо использовать, чтобы выдать сумму N грн. или вывести -1, если указанную сумму выдать нельзя.
Формат входных данных
Первая строка стандартного потока ввода содержит количество тестовых случаев Т. Каждый тестовый случай - это сумма N, которую необходимо выдать, записанная в отдельной строке. 1 ≤ N ≤ 10000.
Формат результата
Для каждого тестового случая выведите в отдельную строку стандартного потока вывода единственное число - минимальное количество купюр, необходимое, чтобы выплатить указанную сумму.
0
Эксперт NIX
 Аватар для Marinero
2796 / 2039 / 682
Регистрация: 02.03.2015
Сообщений: 6,509
19.03.2015, 15:28
Лучший ответ Сообщение было отмечено cotypan как решение

Решение

Bash
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
tests=0
read T
while [ $[++tests] -le T ]
do
    read N
    if [ $N -gt 0 -a $N -le 10000 ]
    then
        bills=0
        for bill in 500 200 100 50 20 10
        do
            if [ $N -ge $bill ]
            then
                bills+=$[N/$bill]
                N=$[$N%$bill]
            fi
         done
         if [ $N -ne 0 ]
         then
             echo "-1"
         else
             echo "$bills"
         fi
     else
         echo "You should put number between 1 and 10000"
     fi
done
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
19.03.2015, 15:28
Помогаю со студенческими работами здесь

Ускорить работу программы
Здравствуйте. Помогите пожалуйста ускорить работу программы: n = d = for i in range(n): d.append(list(map(int,...

Ускорить работу программы
суть такова, на форме имеется два текст бокса и кнопка, в первый текст бокс вводится набор букв, во второй цифра, которая будет означать...

Можно ли ускорить работу с Excel
Вопрос по скорости работы: Excel vs .NET В экселе тоже самое летает. перенес в приложение - уходит почти 15 минут. Вопрос к Гуру -...

Можно ли ускорить работу макроса
Здравствуйте!) У меня вот такой вопрос...возможно ли каким то образом ускорить работу макроса? Если на С++ перенести ускорится?

Ускорить работу программы с Excel
Доброго времени суток! Проблема такова: Есть программа на вход которой подаются 2 файла ексель с данными (числа и буквы ), программа...


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

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Новые блоги и статьи
http://iceja.net/ математические сервисы
iceja 20.01.2026
Обновила свой сайт http:/ / iceja. net/ , приделала Fast Fourier Transform экстраполяцию сигналов. Однако предсказывает далеко не каждый сигнал (см ограничения http:/ / iceja. net/ fourier/ docs ). Также. . .
http://iceja.net/ сервер решения полиномов
iceja 18.01.2026
Выкатила http:/ / iceja. net/ сервер решения полиномов (находит действительные корни полиномов методом Штурма). На сайте документация по API, но скажу прямо VPS слабенький и 200 000 полиномов. . .
Расчёт переходных процессов в цепи постоянного тока
igorrr37 16.01.2026
/ * Дана цепь постоянного тока с R, L, C, k(ключ), U, E, J. Программа составляет систему уравнений по 1 и 2 законам Кирхгофа, решает её и находит переходные токи и напряжения на элементах схемы. . . .
Восстановить юзерскрипты Greasemonkey из бэкапа браузера
damix 15.01.2026
Если восстановить из бэкапа профиль Firefox после переустановки винды, то список юзерскриптов в Greasemonkey будет пустым. Но восстановить их можно так. Для этого понадобится консольная утилита. . .
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11 — это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
Classic Notepad for Windows 11
Jel 10.01.2026
Old Classic Notepad for Windows 11 Приложение для Windows 11, позволяющее пользователям вернуть классическую версию текстового редактора «Блокнот» из Windows 10. Программа предоставляет более. . .
Почему дизайн решает?
Neotwalker 09.01.2026
В современном мире, где конкуренция за внимание потребителя достигла пика, дизайн становится мощным инструментом для успеха бренда. Это не просто красивый внешний вид продукта или сайта — это. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru