A. 简单模拟即可,没什么好说的。注意可能有空格,因此需要getline而不能直接读入。 B. 开两个bool ar[1005][32]的数组,ar[i]代表字符串前i个字符组成的子串出现了那些字母。在回答查询之前先递推计算好ar,然后查询的时候做一下或运算即可。 C. 二分答案,每次测试答案是否大于等于k。 遍历所有数据,对每一本书,计算其哪些维度<k。然后直接查询这个维度下的最大值即可。一共有2^5=32个维度,先预处理这些维度就可以算出每个维度的最大值。 例如,现在有一本书是[1,3,2,4,5],还有两本书是[1,5,1,5,5]和[3,1,4,2,0],k=...