zoukankan      html  css  js  c++  java
  • codeforces 955B Not simply beatiful strings

    题目链接:http://codeforces.com/contest/955/problem/B

    题意:给你一个字符串,问能否把字符串分成两份,使得每一份都可以分成由两组,这两组中的每一组都是一个字符的重复,且这两组重复字符不相同。可以输出Yes,否则输出No。

    分析:这题写的比较乱,总之如果整个字符串只由一个字符构成或者字符串长度小于4,必然不可以,输出No。如果由两种字符构成,那么只要每种字符个数都大于等于2即可输出Yes。由三种或者四种字符构成长度大于等于4的字符串必然是可以的。字符个数大于4必然是不行的,无法满足单个字符重复这个条件。

    AC代码:

     1 #include<bits/stdc++.h>
     2 
     3 using namespace std;
     4 
     5 map<char,int>mp;
     6 int main(){
     7     ios_base::sync_with_stdio(0);
     8     cin.tie(0);
     9     string s;
    10     while(cin>>s){
    11         int d=s.size();
    12         int ans=0;
    13         mp.clear();
    14         for(int i=0;i<d;i++){
    15             if(mp[s[i]]==0){
    16                 ans++;
    17             }
    18             mp[s[i]]++;
    19         }
    20         if(d<=3||ans==1){
    21             cout<<"No"<<endl;
    22         }
    23         else if(ans==2){
    24             int p=0;
    25             for(int i=0;i<d;i++){
    26                 if(mp[s[i]]<2){
    27                     p=1;
    28                     break;
    29                 }
    30             }
    31             if(p==0) cout<<"Yes"<<endl;
    32             else cout<<"No"<<endl;
    33         }
    34         else if(ans>4){
    35             cout<<"No"<<endl;
    36         }
    37         else cout<<"Yes"<<endl;
    38     }
    39 return 0;
    40 }
    View Code
  • 相关阅读:
    treeview 的动态的绑定
    数据库组件
    webconfig,form验证存角色
    treeView
    web.config 的读写与配置
    .net 开发精华
    asp.net
    在ASP.NET中实现AJAX
    验证js
    用js将form表单同时提交到两个不同页面的方法
  • 原文地址:https://www.cnblogs.com/ls961006/p/8660780.html
Copyright © 2011-2022 走看看