题目来自网站:P1428 小鱼比可爱 - 洛谷

这道题不难,需要注意的点其实只有一条:每条鱼都只能看见自己左侧的鱼!
答案与题解如下:
import java.util.Scanner;
public class Main {
public static void main(String[] args){
//输入语句:读取控制台输入的数据
Scanner scan = new Scanner(System.in);
//System.out.print("请输入鱼的数量:");
//读取整数,阻塞等待输入的数据
int n = scan.nextInt();
scan.nextLine(); //读取空格
//System.out.print("请输入这些鱼各自的可爱成都:");
int[] cute = new int[n];
for(int i=0;i<n;i++){
cute[i] = scan.nextInt();
}
//System.out.println("数量"+n);
// 打印数组
//System.out.print("各自可爱程度:");
for (int num : cute) {
//System.out.print(num + " ");
}
System.out.println(" ");
//not_enough:每条鱼觉得不如自己可爱的数量组成的数组
int[] not_enough = new int[n];
for(int i=0;i<n;i++){
//num:有几条不如自己可爱?
int num = 0;
for(int m=0;m<n;m++){
if(cute[m]<cute[i]){
//System.out.println("[m]="+cute[m]+";[i]="+cute[i]);
num = num+1;
}
//每条鱼都只能看见自己左侧的鱼
if(m==i){
break;
}
}
//System.out.println("num="+num);
not_enough[i] = num;
//System.out.println("i="+i+";not_enough"+i+"="+not_enough[i]);
}
//System.out.println(not_enough);
// 打印数组
for (int num : not_enough) {
System.out.print(num + " ");
}
}
}