题解 | 【模拟】#HJ25数据分类处理#
数据分类处理
https://www.nowcoder.com/practice/9a763ed59c7243bd8ab706b2da52b7fd
严格来说应该是简单或者中等题。
注意两点:
1. set()会改变顺序,所以要sorted(set())
2. insert(index, obj),参数顺序易记反
3. 多用辅助变量,比2023届各大大厂的笔试题简单多
import sys line1 = list(map(int, input().split())) m = line1[0] L = line1[1:] line2 = list(map(int, input().split())) n = line2[0] R = line2[1:] R = sorted(set(R)) ans = [] point = 0 for r in R: flag = False count = 0 inject = 0 for index, l in enumerate(L): if str(r) in str(l): if not flag: ans.append(r) flag=True point += 1 inject = point point += 1 ans.append(index) ans.append(l) point += 2 count += 1 if flag: ans.insert(inject,count) len_ = len(ans) ans.insert(0,len_) print(" ".join(str(item) for item in ans))