解题思路:

    遍历数组B,找出数组A中比当前数字小的数字个数,找出数组C中比当前数字大的数字个数,两个数字相乘得到数组B中当前数组能组成的三元组个数。

    具体实现参考代码注释。

注意事项:

参考代码:

import java.util.Scanner;

/**
 * 题目地址:https://www.dotcpp.com/oj/problem2194.html
 * @author yang
 *
 */
public class Seq2194 {

	public static void main(String[] args) {
		// 输入
		Scanner sc = new Scanner(System.in);
		int n = sc.nextInt();
		int[] a = new int[n];
		int[] b = new int[n];
		int[] c = new int[n];
		
		for(int i =0; i<n*3; i++){
			if(i<n){
				a[i]=sc.nextInt();
			}else if(i<n*2){
				b[i-n]=sc.nextInt();
			}else{
				c[i-n*2]=sc.nextInt();
			}
		}
		
		int count = 0;
		
		// 判断:遍历数组b
		for(int i =0; i<n; i++){
			// 判断数组a中比b小的数字个数
			int min = 0;
			for(int k = 0; k<n; k++){
				if(a[k]<b[i]){
					min++;
				}
			}
			// 判断数组c中比b大的数字个数
			int max = 0;
			for(int k = 0; k<n; k++){
				if(c[k]>b[i]){
					max++;
				}
			}
			// 计算
			count += min*max;
		}
		
		// 输出
		System.out.println(count);
	}
	
}


点赞(0)
 

0.0分

0 人评分

C语言网提供由在职研发工程师或ACM蓝桥杯竞赛优秀选手录制的视频教程,并配有习题和答疑,点击了解:

一点编程也不会写的:零基础C语言学练课程

解决困扰你多年的C语言疑难杂症特性的C语言进阶课程

从零到写出一个爬虫的Python编程课程

只会语法写不出代码?手把手带你写100个编程真题的编程百练课程

信息学奥赛或C++选手的 必学C++课程

蓝桥杯ACM、信息学奥赛的必学课程:算法竞赛课入门课程

手把手讲解近五年真题的蓝桥杯辅导课程

评论列表 共有 0 条评论

暂无评论