笔试题汇总
01分隔
第一行输入 n 字符串长度, 第二行为字符串,字符串只包含01,返回数组,表示每个位置前缀字符串能被划分为 01相同比例的子串的个数,例如 分成 两个子串01个数分别为 (a,b) & (c,d) 则满足 ad = bc。
思路: 遍历一次字符串,记录01出现次数,字典保存比例出现次数,比例化为最简,有一个出现0次的情况统一归为(0,1) | (1,0),将当前位置比例对应次数返回
import collections
import math
n = int(input())
s = i
原创
2021-08-21 21:39:31 ·
134 阅读 ·
0 评论