寒假限时训练(2)J、K、L

· · 个人记录

J - Cookies

#include <iostream>
#include <cstring>
#include <algorithm>
using namespace std;
int a[105];
int main()
{
  int n;
  cin>>n;
  int odd=0,even=0,sum=0;
  for(int i=0;i<n;i++)
  {
      cin>>a[i];
      sum+=a[i];
      if(a[i]%2==1)
        odd++;
      else even++;
  }
  if(sum%2==0)
  cout<<even<<endl;
  else cout<<odd<<endl;
    return 0;
}

K - Not Shading

#include <iostream>
#include <cstring>
#include <algorithm>
using namespace std;
int n,m,r,c;
char g[55][55];
int main()
{
    int t;
    cin>>t;
    while(t--)
    {
        int cnt=0;
        bool f=false;//初始化
        cin>>n>>m>>r>>c;
        for(int i=1; i<=n; i++)
            for(int j=1; j<=m; j++)
            {
                cin>>g[i][j];
                if(g[i][j]=='B')
                    f=true;//判断是否出现黑色
            }
        if(f!=true)//没有黑色,不能完成
            cout<<-1<<endl;
        else if(g[r][c]=='B')//已经是黑色
            cout<<0<<endl;
        else
        {
            for(int j=1; j<=m; j++)//g[r][c]所在行是否存在黑色
            {
                if(g[r][j]=='B')
                {
                    cnt++;
                    break;
                }
            }
            for(int i=1; i<=n; i++)//g[r][c]所在列是否存在黑色
            {
                if(g[i][c]=='B')
                {
                    cnt++;
                    break;
                }
            }
            if(cnt>0)//行或列存在黑色,只需要一次
                cout<<1<<endl;
            else
                cout<<2<<endl;
        }
    }
    return 0;
}

L - Diverse Substring

#include <iostream>
#include <cstring>
#include <algorithm>
using namespace std;
int main()
{
  int n;
  int f=0;
  string s;
  cin>>n>>s;
  for(int i=0;i<n-1;i++)
  {
      if(s[i]!=s[i+1])//判断相邻两个字符是否不同
      {
          cout<<"YES"<<endl;
          cout<<s[i]<<s[i+1];
          f=1;
          break;
      }
  }
  if(f==0)//没有满足条件的
    cout<<"NO"<<endl;
    return 0;
}