Codeforces Round #387 (Div. 2), problem: (E) Comments Solution in C/C++

Codeforces Round #387 (Div. 2), problem: (E) Comments Solution in C/C++

 

#include <stdio.h>
#include <string.h>
#include <stdlib.h>

#define N	1000000

int ccnt;

struct comment {
	char *s;
	int d, i;
} cc[N];

char *ss[N];

int parse(int d, int i) {
	int k = atoi(ss[i + 1]);

	cc[ccnt].s = strdup(ss[i]);
	cc[ccnt].d = d;
	cc[ccnt++].i = i;
	i += 2;
	while (k-- > 0)
		i = parse(d + 1, i);
	return i;
}

int compare(const void *a, const void *b) {
	struct comment *pa = (struct comment *) a;
	struct comment *pb = (struct comment *) b;

	return pa->d != pb->d ? pa->d - pb->d : pa->i - pb->i;
}

int main() {
	int k_, k, i, j, m;
	static char s[N + 1], *t;

	scanf("%s", s);
	t = strtok(s, ",");
	for (k_ = 0; t != NULL; ss[k_++] = strdup(t), t = strtok(NULL, ","))
		;
	k = k_ / 2;
	ccnt = 0;
	for (i = 0; i < k_; i = parse(0, i))
		;
	qsort(cc, k, sizeof(*cc), compare);
	m = cc[k - 1].d + 1;
	printf("%d\n", m);
	for (i = 0, j = 0; i < m; i++) {
		while (j < k && cc[j].d == i) {
			printf("%s ", cc[j].s);
			j++;
		}
		printf("\n");
	}
	return 0;
}

 

 

15-Inch MacBook Air Thermal...

MacBook Air 15-Inch Thermal Throttling: The Honest Truth About...

Is the 15-Inch MacBook...

MacBook Air 15-Inch Keyboard & Trackpad: In-Depth Review for...

15-Inch MacBook Air Display...

MacBook Air 15-Inch Display Deep Dive: Is It Really...

Can the 15-Inch MacBook...

Gaming on the MacBook Air 15-Inch: Honest Benchmark Results The...

Is the 15-Inch MacBook...

MacBook Air 15-Inch for Software Engineering: Developer's Deep Dive Many...

MacBook Air 15-Inch 8GB...

MacBook Air 15 8GB vs 16GB RAM: Which Should...

15-Inch MacBook Air Thermal Throttling: Does the Fanless Design Slow It Down?

MacBook Air 15-Inch Thermal Throttling: The Honest Truth About Fanless Performance The biggest technical caveat of the MacBook Air 15-inch is its fanless design. No...

Is the 15-Inch MacBook Air Keyboard and Trackpad Good for Long Typing Sessions?

MacBook Air 15-Inch Keyboard & Trackpad: In-Depth Review for Heavy Typists The keyboard and trackpad are the interfaces you interact with for every moment of...

15-Inch MacBook Air Display Quality: True Tone, Color Accuracy & Brightness

MacBook Air 15-Inch Display Deep Dive: Is It Really That Good? The display is one of the first things you notice about any laptop —...

Can the 15-Inch MacBook Air Run Games? Real Gaming Benchmarks

Gaming on the MacBook Air 15-Inch: Honest Benchmark Results The MacBook Air 15-inch was not designed as a gaming laptop — but that doesn't mean...

Is the 15-Inch MacBook Air Good for Software Engineering and Coding?

MacBook Air 15-Inch for Software Engineering: Developer's Deep Dive Many professional software engineers and CS students are choosing the MacBook Air 15-inch as their daily...

MacBook Air 15-Inch 8GB vs 16GB RAM: Which Memory Size Do You Need?

MacBook Air 15 8GB vs 16GB RAM: Which Should You Configure? This is the question every MacBook Air buyer faces at checkout. Upgrading from 8GB...

How Long Does the Battery Last on the 15-Inch MacBook Air? Real Tests

MacBook Air 15-Inch Battery Life: Real-World Test Results Apple claims up to 18 hours of battery life for the MacBook Air 15-inch. We ran it...

Is the 15-Inch MacBook Air Good for Video Editing and Content Creation?

MacBook Air 15-Inch for Video Editing: Honest Creator's Review Content creation is booming, and the MacBook Air 15-inch has become a popular choice for YouTubers,...

10 Must-Have Accessories for the 15-Inch MacBook Air

10 Must-Have Accessories for the Apple MacBook Air 15-Inch The MacBook Air 15-inch is powerful out of the box, but the right accessories transform it...