Skip to content

Latest commit

 

History

History
48 lines (43 loc) · 1.16 KB

1512_好数对的数目.md

File metadata and controls

48 lines (43 loc) · 1.16 KB
/**
 * @author : xfhy
 * Create time : 2020年07月18日15:16:37
 * Description : 1512. 好数对的数目
 * https://leetcode-cn.com/problems/number-of-good-pairs
 */
public class Solution {

    /**
     * 用一个数组记录一下哪些数字超过了1,超过1的话,则计算一下x-1到1的等差队列之和
     */
    public static int numIdenticalPairs(int[] nums) {
        if (nums == null || nums.length == 0) {
            return 0;
        }
        int[] myNums = new int[101];
        for (int num : nums) {
            myNums[num]++;
        }
        int result = 0;
        for (int myNum : myNums) {
            result += getNum(myNum);
        }
        return result;
    }

    public static int getNum(int num) {
        if (num <= 1) {
            return 0;
        }
        int result = 0;
        for (int i = num - 1; i > 0; i--) {
            result += i;
        }
        return result;
    }

    public static void main(String[] args) {
        int[] array = new int[]{1, 2, 3, 1, 1, 3};
        int[] array2 = new int[]{1,1,1,1};
        int[] array3 = new int[]{1,2,3};
        System.out.println(numIdenticalPairs(array3));
    }

}