解题思路: 先排序,然后遍历B1,B2,B3,……,BN ,对于每一个Bi,只需计算Ai中小于其数量与Ci中大于其数量即可。
参考代码:
n=int(input())
list1 = list(map(int,input().split()))
list2 = list(map(int,input().split()))
list3= list(map(int,input().split()))
list1.sort()
list2.sort()
list3.sort()
k=n-1
cnt1=0
cnt2=0
sum=0
j=0
for i in list2:
cnt1=0
cnt2=0
k=n-1
j=0
while j<n and list1[j]<i :
cnt1+=1
j+=1
while k>=0 and list3[k]>i :
cnt2+=1
k-=1
sum+=cnt1*cnt2
print(sum)
0.0分
0 人评分
C语言程序设计教程(第三版)课后习题6.3 (C语言代码)浏览:535 |
C语言训练-计算:t=1-1/(2*2)-1/(3*3)-...-1/(m*m) (C语言代码)浏览:796 |
【出圈】 (C语言代码)浏览:585 |
C语言考试练习题_排列 (C语言代码)浏览:756 |
矩形面积交 (C++代码)浏览:1199 |
printf基础练习2 (C语言代码)浏览:539 |
C二级辅导-阶乘数列 (C语言代码)浏览:580 |
矩阵的对角线之和 (C语言代码)浏览:1389 |
C语言程序设计教程(第三版)课后习题9.1 (C语言代码)浏览:640 |
快速排序算法1浏览:993 |