题目描述: 给你一个图n*m 如果曼哈顿距离等于3 就可以匹配 问你最多匹配多少个点
分析:反正当时我是没推出来,n=2,m=5,写成了8没想到是10~~~~~
ac代码:
#include<bits/stdc++.h> using namespace std; int x[6]={0,0,0,0,2,4}; int main(){ long long n,m; cin>>n>>m; if(n<m)swap(n,m); if(m==1){ cout<<n/6*6+x[n%6]; } else if(m==2) { if(n==2)cout<<0<<endl; else if(n==3)cout<<4<<endl; else if(n==7)cout<<12<<endl; else cout<<n*m<<endl; } else if((n&1)+(m&1)==2) cout<<m*n-1<<endl; else cout<<n*m<<endl; }