6233 2023. 11. 08 12:07:16 CWM Zsonglőrködés cpp17 Hibás válasz 0/100 1s 81016 KiB
// KKGyak.cpp : This file contains the 'main' function. Program execution begins and ends there.
//
using namespace std;

#include <iostream>
#include <map>
#include <set>
#include <unordered_set>
#include <vector>

int main()
{
    int a;
    cin >> a;
	map<int, multiset<int>> dataStr;
	set<int> exists;
	vector<int> exsistsVec;
	for (size_t i = 0; i < a; i++)
	{
		int a, b;
		cin >> a >> b;
		if (exists.count(a) == 0) {
			dataStr.insert({ a,multiset<int>() });
			exists.insert(a);
			exsistsVec.push_back(a);
		}
		dataStr[a].insert(b);
	}
	int res = 0;
	int testedIdx = 0;
	while (true)
	{
		int chain = -1;
		int convToMap = exsistsVec[testedIdx];
		/*for (auto m : dataStr) {
			if (m.second.size() > 0) {
				chain = *m.second.begin();
				dataStr[m.first].erase(dataStr[m.first].begin());
				break;
			}
		}*/
		while (true) {
			if (dataStr[exsistsVec[testedIdx]].size() == 0) {
				testedIdx++;
				if (exsistsVec.size() <= testedIdx) break;
			}
			else {
				chain = *dataStr[exsistsVec[testedIdx]].begin();
				dataStr[exsistsVec[testedIdx]].erase(dataStr[exsistsVec[testedIdx]].begin());
				break;
			}
		}
		if (chain == -1) break;
		while (true)
		{
			if (exists.count(chain) == 1 && dataStr[chain].size()>0) {
				int old = chain;
				chain = *dataStr[chain].begin();
				dataStr[old].erase(dataStr[old].begin());
			}
			else break;
		}
		res++;
	}
	cout << res;
}

// Run program: Ctrl + F5 or Debug > Start Without Debugging menu
// Debug program: F5 or Debug > Start Debugging menu

// Tips for Getting Started: 
//   1. Use the Solution Explorer window to add/manage files
//   2. Use the Team Explorer window to connect to source control
//   3. Use the Output window to see build output and other messages
//   4. Use the Error List window to view errors
//   5. Go to Project > Add New Item to create new code files, or Project > Add Existing Item to add existing code files to the project
//   6. In the future, to open this project again, go to File > Open > Project and select the .sln file
Részfeladat Összpont Teszt Verdikt Idő Memória
subtask1 0/0
1 Hibás válasz 3ms 1812 KiB
2 Elfogadva 3ms 2044 KiB
subtask2 0/20
3 Elfogadva 7ms 3024 KiB
4 Elfogadva 214ms 25240 KiB
5 Hibás válasz 680ms 59924 KiB
6 Elfogadva 769ms 71704 KiB
7 Elfogadva 982ms 79196 KiB
8 Elfogadva 1s 79452 KiB
9 Elfogadva 978ms 79456 KiB
10 Elfogadva 865ms 79588 KiB
11 Hibás válasz 860ms 79820 KiB
subtask3 0/35
12 Elfogadva 3ms 3648 KiB
13 Hibás válasz 3ms 3908 KiB
14 Hibás válasz 3ms 4012 KiB
15 Hibás válasz 3ms 4064 KiB
16 Hibás válasz 3ms 4092 KiB
17 Hibás válasz 4ms 4464 KiB
18 Hibás válasz 3ms 4360 KiB
19 Hibás válasz 4ms 4648 KiB
20 Hibás válasz 4ms 4496 KiB
subtask4 0/45
21 Elfogadva 7ms 5064 KiB
22 Hibás válasz 85ms 10092 KiB
23 Hibás válasz 702ms 61592 KiB
24 Elfogadva 259ms 21200 KiB
25 Hibás válasz 850ms 80844 KiB
26 Hibás válasz 287ms 23460 KiB
27 Hibás válasz 855ms 81016 KiB
28 Hibás válasz 284ms 23420 KiB
29 Hibás válasz 953ms 80948 KiB