zoukankan      html  css  js  c++  java
  • codeforces 957A Tritonic Iridescence

    题目链接:http://codeforces.com/contest/957/problem/A

    题意:给你一个长度为n的字符串(1<=n<=100),这个字符串中仅出现C、M、Y、?这四种字符,然后将字符串中的?用其他三种代替,使得相邻的字符都不相同。如果方法数大于等于2,输出Yes,否则输出No

    分析:很简单,如果有两个不是?的相同元素相邻必然输出No,其他情况只有所有的?都不在首尾且?两边的字符不相同输出No,否则输出Yes。(大概是这意思,代码写的略丑)

    AC代码:

     1 #include<bits/stdc++.h>
     2 
     3 using namespace std;
     4 
     5 int main(){
     6     ios_base::sync_with_stdio(0);
     7     cin.tie(0);
     8     char c[10003];
     9     int n;
    10     cin>>n;
    11     for(int i=1;i<=n;i++) cin>>c[i];
    12     c[n+1]='?';
    13     int p=0;
    14     int q=0;
    15     for(int i=1;i<=n;i++){
    16         if(c[i]!='?'&&i<n&&c[i]==c[i+1]){
    17             p=1;
    18             break;
    19         }
    20         if(c[i]=='?'){
    21             if(c[i+1]=='?') q=1;
    22             else if(c[i-1]==c[i+1]){
    23                 q=1;
    24             }
    25         }
    26     }
    27     if(c[1]=='?') q=1;
    28     if(p==1) cout<<"No"<<endl;
    29     else {
    30         if(q==1) cout<<"Yes"<<endl;
    31         else cout<<"No"<<endl;
    32     }
    33 return 0;
    34 }
    View Code
  • 相关阅读:
    实验二 递归下降语法分析
    作业十一
    第七次作业逻辑回归实践
    机器学习第六次作业
    第五次作业
    第三次作业k均值算法
    第二次作业
    机器学习作业一
    14次作业
    12 实验二 递归下降语法分析
  • 原文地址:https://www.cnblogs.com/ls961006/p/8660355.html
Copyright © 2011-2022 走看看