解题思路:
遍历数组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分
1 人评分
C语言训练-数字母 (C语言代码)浏览:649 |
本人酷爱递归实现很多问题,这里也是浏览:556 |
2006年春浙江省计算机等级考试二级C 编程题(2) (C语言代码)浏览:471 |
C语言程序设计教程(第三版)课后习题8.5 (C语言代码)浏览:571 |
C语言程序设计教程(第三版)课后习题3.7 (C语言代码)浏览:569 |
打印十字图 (C语言代码)浏览:2710 |
C语言程序设计教程(第三版)课后习题3.7 (C语言代码)浏览:545 |
蓝桥杯历届试题-翻硬币 (C++代码)浏览:878 |
C语言程序设计教程(第三版)课后习题11.5 (C语言代码)浏览:1479 |
【计算直线的交点数】 (C语言代码)浏览:920 |