小红拿到一个数组其中一些数字被染成红色另一些染成蓝色小红准备从中取2个数选出的两个数的乘积为选择的方案权值选择一红一蓝才是合法的。第一行输入一个正整数n代表数组大小第二行输入n个正整数ai代表小红拿到的数组第三行输入一个由R和B组成的长度为n的字符串第i个字符是R表示第i个元素被染成红色请输出所有合法的选数方案的权值之和并对10的九次方 + 7 取摸
思路:将红色和蓝色的数分别存入两个数组中,然后分别排序,从小到大枚举红色数组和蓝色数组的组合即可,注意判断两个数是否颜色不同。
Python3 代码:
原文地址: https://www.cveoy.top/t/topic/Jwu 著作权归作者所有。请勿转载和采集!