Sponsors

Codeforces Round #378 (Div. 2), Problem: (C) Epidemic in Monstropolis Solution in C

Hi guys , i just tried the Epidemic in Monstropolis problem , hope you might like it .

#include
#include

#define MAXN 500
int a[MAXN];
int b[MAXN];
int partial_sums[MAXN];
unsigned char d[MAXN + 1][MAXN + 1];
unsigned char equals[MAXN + 1][MAXN + 1];
int ans[MAXN + 1][MAXN + 1];
int n, k;
int i, j, r, t;

int dif[2];
int order[2];
char symbol[2];

int main(int argc, char *argv[]) {

#ifndef ONLINE_JUDGE
freopen(“input.txt”, “r”, stdin);
//freopen(“output.txt”, “w”, stdout);
#endif
// read and init data
scanf(“%d”, &n);
for (i = 0; i < n; ++i) { scanf("%d", &a[i]); } scanf("%d", &k); for (i = 0; i < k; ++i) { scanf("%d", &b[i]); } partial_sums[0] = a[0]; for (i = 1; i < n; ++i) { partial_sums[i] = partial_sums[i - 1] + a[i]; } d[0][0] = 1; for (i = 0; i < n; ++i) { equals[i][i] = 1; } for (i = 2; i <= n; ++i) { for (j = 0; j <= n - i; ++j) { equals[j][j + i - 1] = (equals[j][j + i - 2] && (a[j + i - 1] == a[j])); } } // dynamic programming for (i = 1; i <= n; ++i) { int border = k; if (i < k) { border = i; } for (j = 1; j <= border; ++j) { // int border2 = i - j + 1; for (r = 1; r <= i; ++r) { int sub_sum = partial_sums[i - 1] - partial_sums[i - r] + a[i - r]; unsigned char can_be_used = ((r == 1) || !equals[i - r][i - 1]); unsigned char check = (can_be_used && (sub_sum == b[j - 1])); if (d[i - r][j - 1] && check) { d[i][j] = 1; ans[i][j] = r; break; } } } } if (!d[n][k]) { printf("NO\n"); } else { printf("YES\n"); int curn = n; int curk = k; while (curn > 0) {
// print result
int maxval = -1;
int maxindx = curn;

for (i = curn – ans[curn][curk] + 1; i <= curn; ++i) { if (a[i - 1] > maxval) {
maxval = a[i – 1];
maxindx = i;
}
}

int left_cnt = maxindx – curn + ans[curn][curk] – 1;
int right_cnt = curn – maxindx;

dif[0] = 0; dif[1] = -1;
order[0] = right_cnt; order[1] = left_cnt;
symbol[0] = ‘R’; symbol[1] = ‘L’;

if (left_cnt == 0) {
while (maxindx < curn && a[maxindx] == maxval) { maxindx++; left_cnt++; right_cnt--; } dif[0] = 0; dif[1] = -1; order[0] = right_cnt; order[1] = left_cnt; symbol[0] = 'R'; symbol[1] = 'L'; } else if (right_cnt == 0 || a[maxindx] == a[maxindx - 1]) { dif[0] = -1; dif[1] = 0; order[0] = left_cnt; order[1] = right_cnt; symbol[0] = 'L'; symbol[1] = 'R'; } for (j = 0; j < 2; ++j) { for (i = 0; i < order[j]; ++i) { printf("%d %c\n", maxindx, symbol[j]); maxindx += dif[j]; } } curn -= ans[curn][curk]; curk -= 1; } } return 0; }

Humpback whale recovery is...

The Shifting Dynamics of Humpback Whale Paternity The recovery of...

Miracle Sheets Silver-Infused “Self-Cleaning”...

Understanding the Miracle Sheets Silver-Infused Technology The bedding industry is...

FG bans cash tax...

Nigeria Bans Cash Tax Collections and Revenue Roadblocks to...

Iran vs US-Israel war:...

Understanding the Legal Implications of Targeted Strikes on Sovereign...

Sloane Stephens reveals Indian...

Sloane Stephens Unveils Stylish New Look for 'Tennis Paradise'...

Shahed drone meets clone...

The Dawn of the Clone: US LUCAS Drone Debuts...

Humpback whale recovery is changing who fathers the calves

The Shifting Dynamics of Humpback Whale Paternity The recovery of humpback whale populations across the globe is often cited as a triumph for environmental protection...

Miracle Sheets Silver-Infused “Self-Cleaning” Claims Examined: 2026 Consumer Report on Miracle Made Cooling Fabric Positioning, Antimicrobial Testing Context, and What Shoppers Should Verify

Understanding the Miracle Sheets Silver-Infused Technology The bedding industry is currently undergoing a technological revolution, with Miracle Made (popularly known for Miracle Sheets) at the...

FG bans cash tax collections, revenue roadblocks

Nigeria Bans Cash Tax Collections and Revenue Roadblocks to Boost Transparency In a landmark move aimed at modernizing the nation’s fiscal operations, the Federal Government...

Iran vs US-Israel war: The legality, or illegality, of killing a foreign leader, explained

Understanding the Legal Implications of Targeted Strikes on Sovereign LeadersThe geopolitical landscape of the Middle East has been thrust into unprecedented turmoil following reports...

Sloane Stephens reveals Indian Wells kit

Sloane Stephens Unveils Stylish New Look for 'Tennis Paradise' at Indian Wells As the tennis world prepares for one of the most prestigious stops on...

Shahed drone meets clone in US war on Iran

The Dawn of the Clone: US LUCAS Drone Debuts in CombatThe landscape of modern warfare shifted significantly on February 28th during a series of...

Gold loans grow 128%, outstandings cross 4 lakh crore

Gold Loans Witness Explosive 128% Growth as Outstandings Surpass ₹4 Lakh Crore India's financial landscape is witnessing a dramatic surge in gold-backed lending, signaling a...

Lottery Unlocked 2026: AI Accuracy Claims Examined, Pricing Verified, and What Consumers Should Confirm Before Buying

Lottery Unlocked 2026: A Deep Dive into AI Accuracy and Pricing ClaimsThe intersection of artificial intelligence and the lottery industry has reached a new...

How to be proactive about cancer prevention

Taking Charge: How to be Proactive About Cancer Prevention Every year, millions of families are affected by cancer, yet a startling statistic offers a glimmer...