Submission #44779158
Source Code Expand
#include<cstdio>
#include<utility>
using namespace std;
#define Ed for(int i=h[x];~i;i=ne[i])
#define Ls(i,l,r) for(int i=l;i<r;++i)
#define Rs(i,l,r) for(int i=l;i>r;--i)
#define Le(i,l,r) for(int i=l;i<=r;++i)
#define Re(i,l,r) for(int i=l;i>=r;--i)
#define L(i,l) for(int i=0;i<l;++i)
#define E(i,l) for(int i=1;i<=l;++i)
#define W(t) while(t--)
#define Wh while
const int N=2010;
int n,m,h[26][N],w[26][N];
pair<int,int> ch[N],cw[N];
char s[N];
bool sth[N],stw[N];
int main(){
#ifndef ONLINE_JUDGE
freopen("1.in","r",stdin);
#endif
scanf("%d%d",&n,&m);
E(i, n){
scanf("%s",s+1);
E(j, m)
++h[s[j]-'a'][i],++w[s[j]-'a'][j];
}
int nh=n,nw=m,tot=n+m;
W(tot){
int cnt1=0,cnt2=0;
E(i, n){
if(sth[i])continue;
L(j, 26)
if(h[j][i]==nw&&nw>=2){
ch[++cnt1]={i,j};break;}
}
E(i, m){
if(stw[i])continue;
L(j, 26)
if(w[j][i]==nh&&nh>=2){
cw[++cnt2]={i,j};break;}
}
if(!(cnt1|cnt2))break;
E(i, cnt1){
sth[ch[i].first]=1;
E(j, m)--w[ch[i].second][j];
--nh;
}
E(i, cnt2){
stw[cw[i].first]=1;
E(j, n)--h[cw[i].second][j];
--nw;
}
}
printf("%d",nh*nw);
return 0;
}
Submission Info
| Submission Time |
|
| Task |
D - Magical Cookies |
| User |
WUSICHENG |
| Language |
C++ 20 (gcc 12.2) |
| Score |
400 |
| Code Size |
1452 Byte |
| Status |
AC |
| Exec Time |
127 ms |
| Memory |
2172 KiB |
Compile Error
Main.cpp: In function ‘int main()’:
Main.cpp:23:10: warning: ignoring return value of ‘int scanf(const char*, ...)’ declared with attribute ‘warn_unused_result’ [-Wunused-result]
23 | scanf("%d%d",&n,&m);
| ~~~~~^~~~~~~~~~~~~~
Main.cpp:25:14: warning: ignoring return value of ‘int scanf(const char*, ...)’ declared with attribute ‘warn_unused_result’ [-Wunused-result]
25 | scanf("%s",s+1);
| ~~~~~^~~~~~~~~~
Judge Result
| Set Name |
Sample |
All |
| Score / Max Score |
0 / 0 |
400 / 400 |
| Status |
|
|
| Set Name |
Test Cases |
| Sample |
sample00.txt, sample01.txt, sample02.txt |
| All |
sample00.txt, sample01.txt, sample02.txt, testcase00.txt, testcase01.txt, testcase02.txt, testcase03.txt, testcase04.txt, testcase05.txt, testcase06.txt, testcase07.txt, testcase08.txt, testcase09.txt, testcase10.txt, testcase11.txt, testcase12.txt, testcase13.txt, testcase14.txt, testcase15.txt, testcase16.txt, testcase17.txt, testcase18.txt, testcase19.txt, testcase20.txt, testcase21.txt, testcase22.txt, testcase23.txt, testcase24.txt, testcase25.txt, testcase26.txt, testcase27.txt, testcase28.txt, testcase29.txt, testcase30.txt, testcase31.txt, testcase32.txt |
| Case Name |
Status |
Exec Time |
Memory |
| sample00.txt |
AC |
0 ms |
1704 KiB |
| sample01.txt |
AC |
0 ms |
1704 KiB |
| sample02.txt |
AC |
0 ms |
1648 KiB |
| testcase00.txt |
AC |
13 ms |
2100 KiB |
| testcase01.txt |
AC |
15 ms |
2044 KiB |
| testcase02.txt |
AC |
14 ms |
2060 KiB |
| testcase03.txt |
AC |
14 ms |
2156 KiB |
| testcase04.txt |
AC |
15 ms |
2072 KiB |
| testcase05.txt |
AC |
15 ms |
2080 KiB |
| testcase06.txt |
AC |
31 ms |
2016 KiB |
| testcase07.txt |
AC |
38 ms |
2084 KiB |
| testcase08.txt |
AC |
37 ms |
2132 KiB |
| testcase09.txt |
AC |
42 ms |
2072 KiB |
| testcase10.txt |
AC |
15 ms |
2116 KiB |
| testcase11.txt |
AC |
43 ms |
2160 KiB |
| testcase12.txt |
AC |
51 ms |
2056 KiB |
| testcase13.txt |
AC |
50 ms |
2060 KiB |
| testcase14.txt |
AC |
56 ms |
2044 KiB |
| testcase15.txt |
AC |
18 ms |
2172 KiB |
| testcase16.txt |
AC |
38 ms |
2012 KiB |
| testcase17.txt |
AC |
58 ms |
2064 KiB |
| testcase18.txt |
AC |
66 ms |
2156 KiB |
| testcase19.txt |
AC |
68 ms |
2080 KiB |
| testcase20.txt |
AC |
18 ms |
1996 KiB |
| testcase21.txt |
AC |
40 ms |
2048 KiB |
| testcase22.txt |
AC |
53 ms |
2124 KiB |
| testcase23.txt |
AC |
59 ms |
2012 KiB |
| testcase24.txt |
AC |
72 ms |
2040 KiB |
| testcase25.txt |
AC |
96 ms |
2156 KiB |
| testcase26.txt |
AC |
95 ms |
2060 KiB |
| testcase27.txt |
AC |
127 ms |
2072 KiB |
| testcase28.txt |
AC |
127 ms |
2044 KiB |
| testcase29.txt |
AC |
20 ms |
2076 KiB |
| testcase30.txt |
AC |
20 ms |
1972 KiB |
| testcase31.txt |
AC |
20 ms |
1996 KiB |
| testcase32.txt |
AC |
20 ms |
2076 KiB |