250052026-02-17 12:09:57pocsaybBeszerzéscpp17Time limit exceeded 19/50600ms3480 KiB
#include <iostream>
#include <map>
#include <vector>

using namespace std;
using ll = long long;




int main()
{
	ll numOfFoods, numOfOrders, numOfIngredients;
	cin >> numOfFoods >> numOfOrders >> numOfIngredients;

	/*
	 Az ételek leírását az alábbi módon tároljuk:
	 vector<vector<pair<ll,ll>>> foods(numOfFoods)
	 food[i]:= az i-dik étel leírása egy vektor ami tartalmazza az össze össetevőt
	 foods[i][j] az i-dik étel j-dik összetevője
	 foods[i][j].first az i-dik étel j-dik összetevőjének indexe
	 foods[i][j].second az i-dik étel j-dik összetevőjének mennyisége
	*/
	
	//ÉTELEK BEOLVASÁSA:
	vector<vector<pair<ll,ll>>> foods(numOfFoods);
	ll numOfIng;//, ingredienetIndex, ingredientAmount;
	vector<pair<ll, ll>> food;
	pair<ll, ll> ingredient;
	for (ll i = 0; i < numOfFoods; i++) {
		cin >> numOfIng;
		food = {};
		for (ll j = 0; j < numOfIng; j++) {
			cin >> ingredient.first >> ingredient.second;
			ingredient.first -= 1;
			food.push_back(ingredient);
		}
		foods[i] = food;
	}


	/*
	A szükséges élelniszerek tárolása:
	létrehozunk egy vectort:
	vector<ll> ingredients
	ingredients[i] az i-dik sorszámú alapanyagból ennyi fogyott a hétvégén.
	*/

	//"ingredients" LÉTREHOZÁSA:
	vector<ll> ingredients(numOfIngredients, 0);


	//RENDELÉSEK FELDOLGOZÁSA
	ll numOfFoo;
	ll indexOfFood, piecies;
	for (ll i = 0; i < numOfOrders; i++)
	{
		cin >> numOfFoo;
		for (ll j = 0; j < numOfFoo; j++) {
			cin >> indexOfFood >> piecies;
			/*
			for (ll k = 0; k < foods[indexOfFood-1].size(); k++) {
				ingredients[foods[indexOfFood - 1][k].first] += (foods[indexOfFood - 1][k].second * piecies);
			}
			*/
			for (pair<ll, ll> ingredient : foods[indexOfFood-1]) {
				ingredients[ingredient.first] += (ingredient.second * piecies);
			}
			/*
			*/
		}
	}

	//VÁLASZ:
	for (ll i = 0; i < numOfIngredients; i++) {
		cout << ingredients[i] << " ";
	}
}
SubtaskSumTestVerdictTimeMemory
subtask10/0
1Accepted1ms316 KiB
subtask27/7
2Accepted43ms3268 KiB
3Accepted43ms3180 KiB
4Accepted43ms3188 KiB
5Accepted43ms3236 KiB
6Accepted45ms3112 KiB
subtask312/12
7Accepted1ms508 KiB
8Accepted1ms316 KiB
9Accepted1ms316 KiB
10Accepted1ms316 KiB
11Accepted1ms316 KiB
12Accepted1ms316 KiB
13Accepted1ms316 KiB
14Accepted1ms392 KiB
15Accepted1ms396 KiB
16Accepted1ms316 KiB
17Accepted1ms316 KiB
subtask40/13
18Accepted43ms3268 KiB
19Accepted43ms3180 KiB
20Accepted43ms3188 KiB
21Accepted43ms3236 KiB
22Accepted45ms3112 KiB
23Accepted43ms3224 KiB
24Accepted50ms3256 KiB
25Accepted97ms3176 KiB
26Accepted118ms3380 KiB
27Accepted112ms3236 KiB
28Time limit exceeded600ms2724 KiB
29Time limit exceeded586ms2724 KiB
30Time limit exceeded532ms3480 KiB
31Time limit exceeded583ms2728 KiB
32Time limit exceeded580ms2724 KiB
33Time limit exceeded600ms2860 KiB
34Time limit exceeded600ms2652 KiB
35Accepted137ms3244 KiB
36Time limit exceeded589ms2740 KiB
subtask50/18
37Accepted1ms508 KiB
38Accepted43ms3268 KiB
39Accepted43ms3180 KiB
40Accepted43ms3188 KiB
41Accepted43ms3236 KiB
42Accepted45ms3112 KiB
43Accepted1ms316 KiB
44Accepted1ms316 KiB
45Accepted1ms316 KiB
46Accepted1ms316 KiB
47Accepted1ms316 KiB
48Accepted1ms316 KiB
49Accepted1ms392 KiB
50Accepted1ms396 KiB
51Accepted1ms316 KiB
52Accepted1ms316 KiB
53Accepted43ms3224 KiB
54Accepted50ms3256 KiB
55Accepted97ms3176 KiB
56Accepted118ms3380 KiB
57Accepted112ms3236 KiB
58Time limit exceeded600ms2724 KiB
59Time limit exceeded586ms2724 KiB
60Time limit exceeded532ms3480 KiB
61Time limit exceeded583ms2728 KiB
62Time limit exceeded580ms2724 KiB
63Time limit exceeded600ms2860 KiB
64Time limit exceeded600ms2652 KiB
65Accepted137ms3244 KiB
66Time limit exceeded589ms2740 KiB
67Time limit exceeded588ms2244 KiB
68Time limit exceeded591ms2476 KiB
69Time limit exceeded591ms2220 KiB
70Time limit exceeded591ms2416 KiB
71Accepted243ms2536 KiB
72Accepted135ms2140 KiB
73Accepted74ms2100 KiB
74Accepted65ms2104 KiB
75Accepted54ms2356 KiB
76Accepted64ms2320 KiB
77Accepted64ms2616 KiB
78Accepted45ms2356 KiB