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; }

A Radical New Kind...

The Tabletop Revolution: Compact Particle Accelerators Poised to Transform...

Why Native American Heritage...

The Profound Significance of Native American Heritage Month in...

Driverless rideshare service Waymo...

Waymo’s Driverless Rideshare Service Headed to San Diego Amid...

Ascot Reports Third Quarter...

Ascot Resources Releases Unaudited Third Quarter 2025 Financial Results VANCOUVER,...

First Ikea, now Costco...

Kiwi Property Group Plays Trump Cards with Costco and...

NBC’s “Today” Show Runs...

NBC's Today Show Under Fire for Credulous "Proof" of...

A Radical New Kind of Particle Accelerator Could Transform Science

The Tabletop Revolution: Compact Particle Accelerators Poised to Transform Research For decades, the realm of high-energy physics and advanced materials science has been dominated by...

Why Native American Heritage Month matters in San Diego

The Profound Significance of Native American Heritage Month in San Diego November marks Native American Heritage Month (NAHM), a period dedicated to recognizing the rich...

Driverless rideshare service Waymo coming to San Diego gets mixed reactions

Waymo’s Driverless Rideshare Service Headed to San Diego Amid Mixed Community Reactions San Diego is officially slated to become the next major metropolitan area to...

Ascot Reports Third Quarter 2025 Results

Ascot Resources Releases Unaudited Third Quarter 2025 Financial Results VANCOUVER, British Columbia – Ascot Resources Ltd. (TSXV: AOT.H; OTCID: AOTVF) has officially announced its unaudited...

First Ikea, now Costco Wholesale: Kiwi Property Group plays trump cards

Kiwi Property Group Plays Trump Cards with Costco and Ikea Kiwi Property Group (KPG) is strategically reshaping its commercial landscape, making major moves that cement...

NBC’s “Today” Show Runs Credulous Report Claiming “Proof” of Noah’s Ark

NBC's Today Show Under Fire for Credulous "Proof" of Noah’s Ark Report A recent segment on NBC’s venerable Today show has sparked significant criticism within...

Will Emmvee Photovoltaic IPO deliver gains for long-term investors?

Emmvee Photovoltaic IPO: A Bright Outlook for Long-Term Solar Investors? The Indian renewable energy sector continues to shine brightly on the financial markets, and the...

$200 a week and tinned fish: Cost of living hits international students

Australia's Cost of Living Crisis Pushes International Students to the Brink The dream of studying abroad in Australia is quickly turning into a financial nightmare...

Cornell to pay $60M to settle Trump administration probes (Bianca Quilantan/Politico)

Cornell Pays $60 Million to Settle Trump-Era Research Probes E-Blogarithm Exclusive: Cornell University has agreed to a hefty financial resolution, paying $60 million to settle...