| Task: | Pizza |
| Sender: | Pietari Kaskela |
| Submission time: | 2015-09-30 18:02:57 +0300 |
| Language: | C++ |
| Status: | READY |
| Result: | ACCEPTED |
| test | verdict | time | |
|---|---|---|---|
| #1 | ACCEPTED | 0.18 s | details |
| #2 | ACCEPTED | 0.05 s | details |
| #3 | ACCEPTED | 0.07 s | details |
| #4 | ACCEPTED | 0.27 s | details |
| #5 | ACCEPTED | 0.66 s | details |
| #6 | ACCEPTED | 0.66 s | details |
| #7 | ACCEPTED | 0.65 s | details |
| #8 | ACCEPTED | 0.65 s | details |
| #9 | ACCEPTED | 0.65 s | details |
| #10 | ACCEPTED | 0.64 s | details |
| #11 | ACCEPTED | 0.66 s | details |
| #12 | ACCEPTED | 0.66 s | details |
| #13 | ACCEPTED | 0.66 s | details |
| #14 | ACCEPTED | 0.68 s | details |
| #15 | ACCEPTED | 0.69 s | details |
Code
#include <bits/stdc++.h>
#define i64 long long
#define u64 unsigned long long
#define i32 int
#define u32 unsigned int
#define pii pair<int, int>
#define pll pair<long long, long long>
#define defmod 1000000007
using namespace std;
int s[200][200][26] = {0};
vector<int> sum(int a, int b, int c, int d){
vector<int> re(26, 0);
for(int k = 0; k < 26; k++)
re[k] = s[c][d][k];
if(a > 0){
for(int k = 0; k < 26; k++)
re[k]-=s[a-1][d][k];
}
if(b > 0){
for(int k = 0; k < 26; k++)
re[k]-=s[c][b-1][k];
}
if(a > 0 && b > 0){
for(int k = 0; k < 26; k++)
re[k]+=s[a-1][b-1][k];
}
return re;
}
int main(){
cin.sync_with_stdio(0);
cin.tie(0);
int n, m; cin >> n >> m;
string t[202];
for(int i = 0; i < n; i++){
cin >> t[i];
int rivi[26] = {0};
for(int j = 0; j < m; j++){
rivi[t[i][j]-'A']++;
for(int k = 0; k < 26; k++)
s[i][j][k] = rivi[k];
if(i > 0){
for(int k = 0; k < 26; k++)
s[i][j][k]+=s[i-1][j][k];
}
}
}
int re = 0;
for(int i = 0; i < n; i++){
for(int j = 0; j < m; j++){
for(int jj = j; jj < m; jj++){
for(int ii = i; ii < n; ii++){
vector<int> lol = sum(i, j, ii, jj);
bool suur = false;
bool ok = true;
for(int k = 0; k < 26; k++){
if(lol[k] > 1){
suur = true;
ok = false;
break;
}
}
if(suur)
break;
if(ok)
re++;
}
}
}
}
cout << re << endl;
return 0;
}Test details
Test 1
Verdict: ACCEPTED
| input |
|---|
| 184 87 LRBBMQBHCDARZOWKKYHIDDQSCDXRJM... |
| correct output |
|---|
| 224236 |
| user output |
|---|
| 224236 |
Test 2
Verdict: ACCEPTED
| input |
|---|
| 27 45 JGFWGHIJQSOQTXXDACDWKJIFPUSGWE... |
| correct output |
|---|
| 16321 |
| user output |
|---|
| 16321 |
Test 3
Verdict: ACCEPTED
| input |
|---|
| 191 23 NPWSFHCKPTJGFLITCZCZJBE YYAJAXQMKHIEMPGYFZHNGSV CVXEWGHCGFCQHZITLPBPBRV AYWJLFCJHZGNXOXAUECMMEU ... |
| correct output |
|---|
| 59000 |
| user output |
|---|
| 59000 |
Test 4
Verdict: ACCEPTED
| input |
|---|
| 61 199 PSKALEBUBFINGWBQWONRUYLCYIMNAQ... |
| correct output |
|---|
| 165724 |
| user output |
|---|
| 165724 |
Test 5
Verdict: ACCEPTED
| input |
|---|
| 200 200 JBAKLCIAQRTWHPANGEIUGENSDHGPGC... |
| correct output |
|---|
| 561705 |
| user output |
|---|
| 561705 |
Test 6
Verdict: ACCEPTED
| input |
|---|
| 200 200 SVSPWCEXABASBFZEMWAKKWAUIUNAVR... |
| correct output |
|---|
| 565820 |
| user output |
|---|
| 565820 |
Test 7
Verdict: ACCEPTED
| input |
|---|
| 200 200 UYTHYGQHERHDTLIKRXUJFPBDDAQCPQ... |
| correct output |
|---|
| 562800 |
| user output |
|---|
| 562800 |
Test 8
Verdict: ACCEPTED
| input |
|---|
| 200 200 WVIFEIMKFUSHVKHLCEDSMACDNVVSQZ... |
| correct output |
|---|
| 557421 |
| user output |
|---|
| 557421 |
Test 9
Verdict: ACCEPTED
| input |
|---|
| 200 200 SZRAYLLUKXDHTRRCIWYTJCDQBQVTVH... |
| correct output |
|---|
| 562054 |
| user output |
|---|
| 562054 |
Test 10
Verdict: ACCEPTED
| input |
|---|
| 200 200 IPETLETNADESOVVODINSQWERQFLBRO... |
| correct output |
|---|
| 558431 |
| user output |
|---|
| 558431 |
Test 11
Verdict: ACCEPTED
| input |
|---|
| 200 200 BCBMFWOTIVPQIENQUWJYAWRYNBCFVV... |
| correct output |
|---|
| 563290 |
| user output |
|---|
| 563290 |
Test 12
Verdict: ACCEPTED
| input |
|---|
| 200 200 NPTEOLTKVTBXIUWBJEKTDYRWKECVJY... |
| correct output |
|---|
| 564778 |
| user output |
|---|
| 564778 |
Test 13
Verdict: ACCEPTED
| input |
|---|
| 200 200 IMQXSCUUJBKVLEOAUPGPFOYBCPXCEY... |
| correct output |
|---|
| 559232 |
| user output |
|---|
| 559232 |
Test 14
Verdict: ACCEPTED
| input |
|---|
| 200 200 YJJWRSXPEKSNBDWCSNUQHJPQTXKYPG... |
| correct output |
|---|
| 557185 |
| user output |
|---|
| 557185 |
Test 15
Verdict: ACCEPTED
| input |
|---|
| 200 200 AITMXDNVBGXOBSKPKBLJFNOWKBQZZA... |
| correct output |
|---|
| 563009 |
| user output |
|---|
| 563009 |
