这道题就是找满足题目条件且能连接的最多连线数目,且题目保证1<= n, m <= 4。
最多连线数目就等于 n * m - 1,当最多连线数为奇数时输出YES,否则输出NO。
- wa了一发是觉得n = 1, m = 1时就一个点不存在能连成线的条件所以没考虑,当n = 1 && m = 1时要输出NO。以后尽量多考虑到这些个别情况。
accode:
#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
int main()
{
std::ios::sync_with_stdio(false);
cin.tie(0), cout.tie(0);
int n, m;
cin>>n>>m;
if(n > m)
{
int tmp = n;
n = m;
m = tmp;
}
ll ans = 0;
//1 1
if(n ==1 && m == 1)
cout<<"NO"<<endl;
//1 2
else if(n == 1 && m == 2)
cout<<"YES"<<endl;
//1 3
else if(n == 1 && m == 3)
cout<<"NO"<<endl;
else if(n == 1 && m == 4)
cout<<"YES"<<endl;
else if(n == 2 && m == 2)
cout<<"YES"<<endl;
else if(n == 2 && m == 3)
cout<<"YES"<<endl;
else if(n == 2 &&m == 4)
cout<<"YES"<<endl;
else if(n == 3 && m == 3)
cout<< "NO"<<endl;
else if(n == 3 && m == 4)
cout<<"YES"<<endl;
else
cout<<"YES"<<endl;
return 0;
}