Submission #1260450

#TimeUsernameProblemLanguageResultExecution timeMemory
1260450kargneqType Printer (IOI08_printer)C++20
0 / 100
24 ms1860 KiB
#include <bits/stdc++.h>
using namespace std;

int main() {
	int n;
	scanf("%d", &n);

	vector<pair<int, string>> words(n);
	string largest_word = "";
	for (int i = 0; i < n; i++) {
		string wordi;
		cin >> wordi;
		words[i] = {0, wordi};
		if (largest_word.size() < wordi.size()) {
			largest_word = wordi;
		}
	}

	for (int i = 0; i < n; i++) {
		int distance = 0;
		string word1 = words[i].second;
		string word2 = largest_word;
		distance = min(word1.size(), word2.size());
		while (word1.substr(0, distance) != word2.substr(0, distance))
			distance--;
		words[i] = {distance, word1};
	}
	sort(words.begin(), words.end());

	string current_word = "";
	for (int i = 0; i < n; i++) {
		while (current_word != "" and
			   current_word != words[i].second.substr(0, current_word.size())) {
			current_word.pop_back();
			printf("-\n");
		}
		while (current_word != words[i].second) {
			current_word.push_back(words[i].second[current_word.size()]);
			cout << words[i].second[current_word.size() - 1] << "\n";
		}
	}
	return 0;
}

Compilation message (stderr)

printer.cpp: In function 'int main()':
printer.cpp:6:14: warning: ignoring return value of 'int scanf(const char*, ...)' declared with attribute 'warn_unused_result' [-Wunused-result]
    6 |         scanf("%d", &n);
      |         ~~~~~^~~~~~~~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...