码迷,mamicode.com
首页 > 其他好文 > 详细

codeforces664

时间:2020-08-17 16:57:19      阅读:72      评论:0      收藏:0      [点我收藏+]

标签:如何   size   turn   gns   splay   NPU   view   sed   lse   

1.

题目:有r,g,b,w四种字符,可以挑选一组r,g,b变成3个w,这个操作可以做任意次。问能否先将之操作,再将之排列,变成回文。

中间定律1(辅助定律):如何判断一个字符串能否重排列成回文?答:最多一种字符的数量是奇数。

辅助定律2:一次题目中的操作,意味着什么样的变化。答:意味着rgbw四种字符的数量的奇偶性都取反。边界条件:在rgb三种不为0的情况下。

solution:

不能操作的话直接判断奇字符<=1种。

能操作的话,操作前后均判断一次。

  

技术图片
def gns():
    return list(map(int,input().split()))
 
t=int(input())
 
for i in range(t):
    ns=gns()
    odd=0
    evn=0
    for c in ns:
        if c%2==0:
            evn+=1
        else:
            odd+=1
    if ns[0]*ns[1]*ns[2]==0:
        if odd<=1:
            print(YES)
            continue
        else:
            print(NO)
            continue
    if evn==2:
        print(NO)
    else:
        print(YES)
View Code

 

2.

3.

4.

5.

6.

codeforces664

标签:如何   size   turn   gns   splay   NPU   view   sed   lse   

原文地址:https://www.cnblogs.com/waldenlake/p/13500730.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!