Доброго времени суток! Решал задачу, условие прилагается. Проблема в том, что на одном тесте выдает ошибку времени (ограничение в полсекунды). Ускорение ввода проблему не решило. Вопрос: есть ли у меня подводный камень в коде, или возможна ошибка в тестах? Заранее спасибо
EDIT : файлы действительно те, в пдф условии неправильно указано про станд. ввод/вывод
Код таков :
#include <iostream>
#include <fstream>
using namespace std;
int main() {
long n, m;
ifstream fin ("input.txt"); // FILES
ofstream fout ("output.txt"); // ASSIGNMENTS
// INPUT //
fin >> n; // Quantity of required decks
long requiredDecks[n]; // Array of required decks for the tricks
for (long i = 0; i < n; i++)
fin >> requiredDecks[i];
fin >> m; // Quantity of decks in stock
long checker[100] = {0}; // Array of existence of all possible decks in stock
for (long i = 0; i < m; i++) {
long deck;
fin >> deck;
checker[deck]++;
}
// END OF INPUT //
// MAIN PART OF PROGRAM //
for (long i = 0; i < n; i++)
if (checker[requiredDecks[i]] < 1) { // Checking for non-existence of concrete deck in hands
fout << "NO" << endl;
return 0;
}
else
--checker[requiredDecks[i]];
// END OF MAIN PART //
fout << "YES" << endl;
return 0;
}
хранить все миллионы чисел не нужно. Нужно просто составить список, сколько карт и каких есть и просто потом сравнить два списка. Я минимально пофиксил, но чуточку исправил. Ну не давать же полный ответ.
#include <iostream>
#include <fstream>
using namespace std;
int main() {
long n, m;
// INPUT //
cin >> n; // Quantity of required decks
long requiredDecks[56] = {0}; // Array of required decks for the tricks
for (long i = 0; i < n; i++) {
long t;
cin >> t;
requiredDecks[t-1]++;
}
cin >> m; // Quantity of decks in stock
long checker[56] = {0}; // Array of existence of all possible decks in stock
for (long i = 0; i < m; i++) {
long deck;
cin >> deck;
checker[deck-1]++;
}
// END OF INPUT //
// MAIN PART OF PROGRAM //
for (long i = 0; i < 56; i++)
if (checker[i] < requiredDecks[i]) {
cout << "NO" << endl;
return 0;
}
// END OF MAIN PART //
cout << "YES" << endl;
return 0;
}
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Хочу реализовать удаление и появления фотографий с использованием классов
Делаю цикл, обрабатывая json массив, получаю в итоге переменную с кучей option которые нужно вставить в начало select, делаю prepend и он вставляет их перевернутымиПробовал...
есть чекбоксы установленные на фильтр, мне нужна проверка если отмечен хоть один чекбокс , то скрыть определенный блокЯ отмечаю чекбокс,...