| Task: | Niitty |
| Sender: | DLPS |
| Submission time: | 2026-09-15 15:59:21 +0300 |
| Language: | C++ (C++20) |
| Status: | READY |
| Result: | 0 |
| subtask | verdict | score |
|---|---|---|
| #1 | WRONG ANSWER | 0 |
| #2 | WRONG ANSWER | 0 |
| #3 | WRONG ANSWER | 0 |
| #4 | WRONG ANSWER | 0 |
| #5 | WRONG ANSWER | 0 |
| #6 | WRONG ANSWER | 0 |
| test | verdict | time | subtask | |
|---|---|---|---|---|
| #1 | WRONG ANSWER | 0.00 s | 1, 2, 3, 4, 5, 6 | details |
| #2 | WRONG ANSWER | 0.01 s | 1, 2, 3, 4, 5, 6 | details |
| #3 | WRONG ANSWER | 0.00 s | 1, 2, 3, 4, 5, 6 | details |
| #4 | ACCEPTED | 0.00 s | 1, 2, 3, 4, 5, 6 | details |
| #5 | ACCEPTED | 0.00 s | 1, 2, 3, 4, 5, 6 | details |
| #6 | WRONG ANSWER | 0.00 s | 2, 3, 4, 5, 6 | details |
| #7 | WRONG ANSWER | 0.00 s | 2, 3, 4, 5, 6 | details |
| #8 | WRONG ANSWER | 0.00 s | 2, 3, 4, 5, 6 | details |
| #9 | WRONG ANSWER | 0.00 s | 2, 3, 4, 5, 6 | details |
| #10 | WRONG ANSWER | 0.00 s | 3, 4, 5, 6 | details |
| #11 | WRONG ANSWER | 0.00 s | 3, 4, 5, 6 | details |
| #12 | WRONG ANSWER | 0.00 s | 3, 4, 5, 6 | details |
| #13 | WRONG ANSWER | 0.00 s | 3, 4, 5, 6 | details |
| #14 | WRONG ANSWER | 0.01 s | 4, 5, 6 | details |
| #15 | WRONG ANSWER | 0.01 s | 4, 5, 6 | details |
| #16 | WRONG ANSWER | 0.01 s | 4, 5, 6 | details |
| #17 | WRONG ANSWER | 0.01 s | 4, 5, 6 | details |
| #18 | WRONG ANSWER | 0.01 s | 5, 6 | details |
| #19 | WRONG ANSWER | 0.01 s | 5, 6 | details |
| #20 | WRONG ANSWER | 0.01 s | 5, 6 | details |
| #21 | WRONG ANSWER | 0.01 s | 5, 6 | details |
| #22 | WRONG ANSWER | 0.02 s | 6 | details |
| #23 | WRONG ANSWER | 0.03 s | 6 | details |
| #24 | WRONG ANSWER | 0.02 s | 6 | details |
| #25 | WRONG ANSWER | 0.02 s | 6 | details |
Compiler report
input/code.cpp: In function 'int main()':
input/code.cpp:130:35: warning: comparison of integer expressions of different signedness: 'int' and 'std::__cxx11::basic_string<char>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
130 | for (int x = 0; x < row.size(); ++x)
| ~~^~~~~~~~~~~~
input/code.cpp: At global scope:
input/code.cpp:61:12: warning: 'int Y2Solver(int, int, int, int, int)' defined but not used [-Wunused-function]
61 | static int Y2Solver(int min, int max, int x1, int x2, int y1)
| ^~~~~~~~Code
#pragma GCC optimize("O3")
#include "bits/stdc++.h"
#include "unordered_map"
#include "set"
#include "map"
#include "vector"
using namespace std;
int preCalcMap[6526026];
int flowerCounts[26] = { 0 };
static set<int> present_flowers = {};
static map<int, int> min_x = {};
static map<int, int> max_x = {};
static map<int, int> min_y = {};
static map<int, int> max_y = {};
// Debug
int CALLS = 0;
int fieldSize = 0;
const unordered_map<char, int> flowerIndecies = { {'A',0},{'B',1},{'C',2},{'D',3},{'E',4},{'F',5},{'G',6},{'H',7},{'I',8},{'J',9},{'K',10},{'L',11},{'M',12},{'N',13},{'O',14},{'P',15},{'Q',16},{'R',17},{'S',18},{'T',19},{'U',20},{'V',21},{'W',22},{'X',23},{'Y',24},{'Z',25} };
static bool ContainsAllFlowers(int x1, int x2, int y1, int y2)
{
++CALLS;
int i1 = (y2 + 1) * 501 + x2 + 1;
int i2 = y1 * 501 + x2 + 1;
int i3 = (y2 + 1) * 501 + x1;
int i4 = y1 * 501 + x1;
for (int i = 0; i < 26; ++i)
{
if (flowerCounts[i] == 0)
{
continue;
}
//auto& flower = preCalcMap[i];
int a = preCalcMap[i1 + i * 251001];
int b = preCalcMap[i2 + i * 251001];
int c = preCalcMap[i3 + i * 251001];
int d = preCalcMap[i4 + i * 251001];
if (a - b - c + d == 0)
{
return false;
}
}
return true;
}
int lastSolution = -1;
static int Y2Solver(int min, int max, int x1, int x2, int y1)
{
int localMin = min;
int localMax = max;
if (lastSolution != -1 && ContainsAllFlowers(x1, x2, y1, lastSolution))
{
return (max - lastSolution + 1);
}
int current = (min + max) / 2;
bool first = true;
int change = 0;
bool wasSuccess = false;
while (true)
{
if (ContainsAllFlowers(x1, x2, y1, current))
{
if (change == 1 && !wasSuccess)
{
break;
}
if (change == 0 && wasSuccess)
{
break;
}
localMax = current;
change = (localMin + current) / 2 - current;
current += change;
wasSuccess = true;
}
else
{
if (change == -1 && wasSuccess)
{
++current;
break;
}
if (change == 0 && !first)
{
return 0;
}
localMin = current;
change = ceil((current + localMax) / 2.0f) - current;
current += change;
wasSuccess = false;
}
first = false;
}
lastSolution = current;
return (max - current + 1);
}
int main()
{
cin >> fieldSize;
for (int y = 0; y < fieldSize; ++y)
{
string row;
cin >> row;
for (int x = 0; x < row.size(); ++x)
{
int flowerType = flowerIndecies.at(row[x]);
//++flowerCounts[flowerType];
if(present_flowers.contains(flowerType))
{
if(x < min_x[flowerType])
{
min_x[flowerType] = x;
}
if(x > max_x[flowerType])
{
max_x[flowerType] = x;
}
if(y < min_y[flowerType])
{
min_y[flowerType] = y;
}
if(y > max_y[flowerType])
{
max_y[flowerType] = y;
}
}
else
{
present_flowers.insert(flowerType);
min_x[flowerType] = x;
max_x[flowerType] = x;
min_y[flowerType] = y;
max_y[flowerType] = y;
}
}
}
int count = 0;
int x_min = 0;
int y_min = 0;
int x_max = fieldSize - 1;
int y_max = fieldSize - 1;
for(auto &flower : present_flowers)
{
if(min_x[flower] > x_min)
{
x_min = min_x[flower];
}
if(max_x[flower] < x_max)
{
x_max = max_x[flower];
}
if(min_y[flower] > y_min)
{
y_min = min_y[flower];
}
if(max_y[flower] < y_max)
{
y_max = max_y[flower];
}
}
int top_shrink = y_max + 1;
int bottom_shrink = fieldSize - y_min;
int left_shrink = x_max + 1;
int right_shrink = fieldSize - x_min;
count = top_shrink * bottom_shrink * left_shrink * right_shrink;
cout << count;
}Test details
Test 1
Subtask: 1, 2, 3, 4, 5, 6
Verdict: WRONG ANSWER
| input |
|---|
| 10 TNCTNPNTPC NPPNTNTPTP NTNTTCNTCT NPCPNPPNTT ... |
| correct output |
|---|
| 2035 |
| user output |
|---|
| 10000 |
Feedback: Incorrect character on line 1 col 1: expected "2035", got "10000"
Test 2
Subtask: 1, 2, 3, 4, 5, 6
Verdict: WRONG ANSWER
| input |
|---|
| 10 NFWQLWNWYS DZOQJVXFPJ CNHXPXMCQD QRTBVNLTQC ... |
| correct output |
|---|
| 9 |
| user output |
|---|
| 12 |
Feedback: Incorrect character on line 1 col 1: expected "9", got "12"
Test 3
Subtask: 1, 2, 3, 4, 5, 6
Verdict: WRONG ANSWER
| input |
|---|
| 10 XXXXXXXXXX XXXXXXXXXX XXXXXXXXXX XXXXXXXXXX ... |
| correct output |
|---|
| 3025 |
| user output |
|---|
| 10000 |
Feedback: Incorrect character on line 1 col 1: expected "3025", got "10000"
Test 4
Subtask: 1, 2, 3, 4, 5, 6
Verdict: ACCEPTED
| input |
|---|
| 10 FFFFFFFFFF FFFFFCFFFF FFFFFFJFFF FFFFFFFFFF ... |
| correct output |
|---|
| 12 |
| user output |
|---|
| 12 |
Test 5
Subtask: 1, 2, 3, 4, 5, 6
Verdict: ACCEPTED
| input |
|---|
| 1 X |
| correct output |
|---|
| 1 |
| user output |
|---|
| 1 |
Test 6
Subtask: 2, 3, 4, 5, 6
Verdict: WRONG ANSWER
| input |
|---|
| 20 BBCBUBOUOBBCUUBBCOUO BOUCOOCUBCOOOCOBOCUO UCCUUUOBCOCBCBUBUCOO BUOBUCUCUOOBCOOUBUOO ... |
| correct output |
|---|
| 38724 |
| user output |
|---|
| 160000 |
Feedback: Incorrect character on line 1 col 1: expected "38724", got "160000"
Test 7
Subtask: 2, 3, 4, 5, 6
Verdict: WRONG ANSWER
| input |
|---|
| 20 CBGLSHGZHYZDWBNDBJUG SMUXOJQYPXZDTMJUIWOJ XIDSTNBGHKRKOVUVMINB MTQGCFRUHQKALXRNCQGS ... |
| correct output |
|---|
| 8334 |
| user output |
|---|
| 48384 |
Feedback: Incorrect character on line 1 col 1: expected "8334", got "48384"
Test 8
Subtask: 2, 3, 4, 5, 6
Verdict: WRONG ANSWER
| input |
|---|
| 20 KKKKKKKKKKKKKKKKKKKK KKKKKKKKKKKKKKKKKKKK KKKKKKKKKKKKKKKKKKKK KKKKKKKKKKKKKKKKKKKK ... |
| correct output |
|---|
| 44100 |
| user output |
|---|
| 160000 |
Feedback: Incorrect character on line 1 col 1: expected "44100", got "160000"
Test 9
Subtask: 2, 3, 4, 5, 6
Verdict: WRONG ANSWER
| input |
|---|
| 20 AAAAAAAAXAAAAAAAAAAA AAAWAAAAAAAAAAAAAOAA AAAAAAAAAAAAAAAAAPAA AAAAAAAAKAAAAAAAAAAZ ... |
| correct output |
|---|
| 18 |
| user output |
|---|
| 24 |
Feedback: Incorrect character on line 1 col 1: expected "18", got "24"
Test 10
Subtask: 3, 4, 5, 6
Verdict: WRONG ANSWER
| input |
|---|
| 50 GRGREEEGREGXRXXEGXXREXGRRRGRRR... |
| correct output |
|---|
| 1584665 |
| user output |
|---|
| 6250000 |
Feedback: Incorrect character on line 1 col 1: expected "1584665", got "6250000"
Test 11
Subtask: 3, 4, 5, 6
Verdict: WRONG ANSWER
| input |
|---|
| 50 AITIISJUHCCRZNKSDCNQKYSQRINFWJ... |
| correct output |
|---|
| 1077746 |
| user output |
|---|
| 5647152 |
Feedback: Incorrect character on line 1 col 1: expected "1077746", got "5647152"
Test 12
Subtask: 3, 4, 5, 6
Verdict: WRONG ANSWER
| input |
|---|
| 50 OOOOOOOOOOOOOOOOOOOOOOOOOOOOOO... |
| correct output |
|---|
| 1625625 |
| user output |
|---|
| 6250000 |
Feedback: Incorrect character on line 1 col 1: expected "1625625", got "6250000"
Test 13
Subtask: 3, 4, 5, 6
Verdict: WRONG ANSWER
| input |
|---|
| 50 FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF... |
| correct output |
|---|
| 1680 |
| user output |
|---|
| 3024 |
Feedback: Incorrect character on line 1 col 1: expected "1680", got "3024"
Test 14
Subtask: 4, 5, 6
Verdict: WRONG ANSWER
| input |
|---|
| 100 NNCMDCDDCCNNNDNCMMNCDCDCCDCDNM... |
| correct output |
|---|
| 25325366 |
| user output |
|---|
| 100000000 |
Feedback: Incorrect character on line 1 col 1: expected "25325366", got "100000000"
Test 15
Subtask: 4, 5, 6
Verdict: WRONG ANSWER
| input |
|---|
| 100 LIMQQIHASECROEVILNVULGWZJPPKOG... |
| correct output |
|---|
| 22342463 |
| user output |
|---|
| 100000000 |
Feedback: Incorrect character on line 1 col 1: expected "22342463", got "100000000"
Test 16
Subtask: 4, 5, 6
Verdict: WRONG ANSWER
| input |
|---|
| 100 TTTTTTTTTTTTTTTTTTTTTTTTTTTTTT... |
| correct output |
|---|
| 25502500 |
| user output |
|---|
| 100000000 |
Feedback: Incorrect character on line 1 col 1: expected "25502500", got "100000000"
Test 17
Subtask: 4, 5, 6
Verdict: WRONG ANSWER
| input |
|---|
| 100 QXQQQQQQQQQQQQQQQQQQQQQQQQQQQQ... |
| correct output |
|---|
| 25650 |
| user output |
|---|
| 150696 |
Feedback: Incorrect character on line 1 col 1: expected "25650", got "150696"
Test 18
Subtask: 5, 6
Verdict: WRONG ANSWER
| input |
|---|
| 200 NAANANMMKNKKAKMKMAKNKMNKMMNNAA... |
| correct output |
|---|
| 403292767 |
| user output |
|---|
| 1600000000 |
Feedback: Incorrect character on line 1 col 1: expected "403292767", got "1600000000"
Test 19
Subtask: 5, 6
Verdict: WRONG ANSWER
| input |
|---|
| 200 OMYWATTLURKQPTKEFMGGYAOONXWVSC... |
| correct output |
|---|
| 388111321 |
| user output |
|---|
| 1600000000 |
Feedback: Incorrect character on line 1 col 1: expected "388111321", got "1600000000"
Test 20
Subtask: 5, 6
Verdict: WRONG ANSWER
| input |
|---|
| 200 CCCCCCCCCCCCCCCCCCCCCCCCCCCCCC... |
| correct output |
|---|
| 404010000 |
| user output |
|---|
| 1600000000 |
Feedback: Incorrect character on line 1 col 1: expected "404010000", got "1600000000"
Test 21
Subtask: 5, 6
Verdict: WRONG ANSWER
| input |
|---|
| 200 LLLLLLLLLLLLLLLLLHLLLLLLLLLLLL... |
| correct output |
|---|
| 14159445 |
| user output |
|---|
| 161406840 |
Feedback: Incorrect character on line 1 col 2: expected "14159445", got "161406840"
Test 22
Subtask: 6
Verdict: WRONG ANSWER
| input |
|---|
| 500 VVHWVUHVHUWWWVUUUWVUUHUUWHWUVW... |
| correct output |
|---|
| 15683003812 |
| user output |
|---|
| -1924509440 |
Feedback: Incorrect character on line 1 col 1: expected "15683003812", got "-1924509440"
Test 23
Subtask: 6
Verdict: WRONG ANSWER
| input |
|---|
| 500 OIMZGEQSBMBDSDXSWRFNKSGFEBBTJE... |
| correct output |
|---|
| 15575906951 |
| user output |
|---|
| -1924509440 |
Feedback: Incorrect character on line 1 col 1: expected "15575906951", got "-1924509440"
Test 24
Subtask: 6
Verdict: WRONG ANSWER
| input |
|---|
| 500 IIIIIIIIIIIIIIIIIIIIIIIIIIIIII... |
| correct output |
|---|
| 15687562500 |
| user output |
|---|
| -1924509440 |
Feedback: Incorrect character on line 1 col 1: expected "15687562500", got "-1924509440"
Test 25
Subtask: 6
Verdict: WRONG ANSWER
| input |
|---|
| 500 WWWWWWWWWWWWWWWWWWWWWWWWWWWWWW... |
| correct output |
|---|
| 3058970930 |
| user output |
|---|
| 931977152 |
Feedback: Incorrect character on line 1 col 1: expected "3058970930", got "931977152"
