Submission #1013805

#TimeUsernameProblemLanguageResultExecution timeMemory
1013805huutuan미술 수업 (IOI13_artclass)C++14
56 / 100
52 ms6488 KiB
#include "artclass.h" #include <bits/stdc++.h> using namespace std; mt19937 rng(69420); int rand(int l, int r){ return uniform_int_distribution<int>(l, r)(rng); } int R[500][500], G[500][500], B[500][500]; bool similar(int u, int v, int x, int y){ return abs(R[u][v]-R[x][y])<=30 && abs(G[u][v]-G[x][y])<=30 && abs(B[u][v]-B[x][y])<=30; } int style(int H, int W, int _R[500][500], int _G[500][500], int _B[500][500]) { memcpy(R, _R, sizeof R); memcpy(G, _G, sizeof G); memcpy(B, _B, sizeof B); int cnt=0; for (int _=0; _<500; ++_){ int x=rand(0, H-30), y=rand(0, W-100); bool check=1; for (int i=x; i<x+30; ++i) for (int j=y; j<y+100; ++j){ check&=similar(i, j, x, y); } cnt+=check; } if (cnt>=100){ return 4; } for (int _=0; _<500; ++_){ int x=rand(0, H-40), y=rand(0, W-40); bool check=1; for (int i=x; i<x+40; ++i) for (int j=y; j<y+40; ++j){ check&=similar(i, j, x, y); } cnt+=check; } if (cnt>=50){ return 1; } cnt=0; for (int i=0; i<H-1; ++i) for (int j=0; j<W; ++j){ cnt+=similar(i, j, i+1, j); } for (int i=0; i<H; ++i) for (int j=0; j<W-1; ++j){ cnt+=similar(i, j, i, j+1); } if (cnt>=2e5) return 2; return 3; }
#Verdict Execution timeMemoryGrader output
Fetching results...