Submission #63536830
Source Code Expand
//People who believe in miracles are as amazing as miracles themselves.
#include<bits/stdc++.h>
#define ll long long
using namespace std;
inline ll read(){
ll x=0,f=1;char ch=getchar();
while(ch<'0'||ch>'9'){if(ch=='-') f=-f;ch=getchar();}
while(ch>='0'&&ch<='9')x=(x<<3)+(x<<1)+(ch^48),ch=getchar();
return x*f;
}
const int N=2e5+10;
int n,m,a[N],ans=INT_MAX,num[10][1<<9];
inline void solve(){
n=read(),m=read();
for(int i=1;i<=n;++i)
for(int x,j=0;j<m;++j) scanf("%1d",&x),a[i]=(a[i]<<1)|x;
if(m==1) return puts("0"),void();
int A=m/2,B=m-A,SA=(1<<A)-1,SB=(1<<B)-1;
for(int s=0;s<=SA;++s){
memset(num,0,sizeof num);
for(int i=1;i<=n;++i){
int p=(a[i]>>B)^s,q=a[i]&SB;
++num[__builtin_popcount(p)][q];
}
for(int t=0;t<=SB;++t){
int sum=0;
for(int i=0;i<=A;++i)
for(int j=0;j<=SB;++j){
int cnt=i+__builtin_popcount(t^j);
sum+=num[i][j]*min(cnt,m-cnt);
}
ans=min(ans,sum);
}
}
printf("%d\n",ans);
}
signed main(){
#ifndef ONLINE_JUDGE
freopen("../1.in","r",stdin);
freopen("../1.out","w",stdout);
#endif
return solve(),0;
}
Submission Info
Submission Time |
|
Task |
G - Flip Row or Col |
User |
include_BM |
Language |
C++ 20 (gcc 12.2) |
Score |
600 |
Code Size |
1307 Byte |
Status |
AC |
Exec Time |
1580 ms |
Memory |
4716 KiB |
Compile Error
Main.cpp: In function ‘void solve()’:
Main.cpp:18:37: warning: ignoring return value of ‘int scanf(const char*, ...)’ declared with attribute ‘warn_unused_result’ [-Wunused-result]
18 | for(int x,j=0;j<m;++j) scanf("%1d",&x),a[i]=(a[i]<<1)|x;
| ~~~~~^~~~~~~~~~
Judge Result
Set Name |
Sample |
All |
Score / Max Score |
0 / 0 |
600 / 600 |
Status |
|
|
Set Name |
Test Cases |
Sample |
00_sample_00.txt, 00_sample_01.txt, 00_sample_02.txt |
All |
00_sample_00.txt, 00_sample_01.txt, 00_sample_02.txt, 01_test_00.txt, 01_test_01.txt, 01_test_02.txt, 01_test_03.txt, 01_test_04.txt, 01_test_05.txt, 01_test_06.txt, 01_test_07.txt, 01_test_08.txt, 01_test_09.txt, 01_test_10.txt, 01_test_11.txt, 01_test_12.txt, 01_test_13.txt, 01_test_14.txt, 01_test_15.txt, 01_test_16.txt, 01_test_17.txt, 01_test_18.txt, 01_test_19.txt, 01_test_20.txt, 01_test_21.txt, 01_test_22.txt, 01_test_23.txt, 01_test_24.txt, 01_test_25.txt, 01_test_26.txt, 01_test_27.txt, 01_test_28.txt, 01_test_29.txt, 01_test_30.txt, 01_test_31.txt |
Case Name |
Status |
Exec Time |
Memory |
00_sample_00.txt |
AC |
1 ms |
3876 KiB |
00_sample_01.txt |
AC |
1 ms |
3944 KiB |
00_sample_02.txt |
AC |
1 ms |
3688 KiB |
01_test_00.txt |
AC |
1 ms |
3632 KiB |
01_test_01.txt |
AC |
1 ms |
3732 KiB |
01_test_02.txt |
AC |
1 ms |
3828 KiB |
01_test_03.txt |
AC |
37 ms |
4244 KiB |
01_test_04.txt |
AC |
21 ms |
4236 KiB |
01_test_05.txt |
AC |
61 ms |
4236 KiB |
01_test_06.txt |
AC |
757 ms |
4540 KiB |
01_test_07.txt |
AC |
1524 ms |
4496 KiB |
01_test_08.txt |
AC |
763 ms |
4396 KiB |
01_test_09.txt |
AC |
1558 ms |
4444 KiB |
01_test_10.txt |
AC |
1562 ms |
4700 KiB |
01_test_11.txt |
AC |
1559 ms |
4648 KiB |
01_test_12.txt |
AC |
1560 ms |
4580 KiB |
01_test_13.txt |
AC |
1558 ms |
4464 KiB |
01_test_14.txt |
AC |
1559 ms |
4704 KiB |
01_test_15.txt |
AC |
766 ms |
4484 KiB |
01_test_16.txt |
AC |
65 ms |
4268 KiB |
01_test_17.txt |
AC |
85 ms |
4448 KiB |
01_test_18.txt |
AC |
1580 ms |
4508 KiB |
01_test_19.txt |
AC |
1567 ms |
4492 KiB |
01_test_20.txt |
AC |
1569 ms |
4460 KiB |
01_test_21.txt |
AC |
1571 ms |
4588 KiB |
01_test_22.txt |
AC |
1571 ms |
4716 KiB |
01_test_23.txt |
AC |
1570 ms |
4468 KiB |
01_test_24.txt |
AC |
1570 ms |
4696 KiB |
01_test_25.txt |
AC |
1567 ms |
4600 KiB |
01_test_26.txt |
AC |
1564 ms |
4656 KiB |
01_test_27.txt |
AC |
1 ms |
3612 KiB |
01_test_28.txt |
AC |
1 ms |
3676 KiB |
01_test_29.txt |
AC |
11 ms |
4384 KiB |
01_test_30.txt |
AC |
1290 ms |
3812 KiB |
01_test_31.txt |
AC |
1555 ms |
4488 KiB |