LeetCode 1295. 统计位数为偶数的数字

题目

1295. 统计位数为偶数的数字

描述

给你一个整数数组 nums,请你返回其中位数为 偶数 的数字的个数。

示例 1:

输入:nums = [12,345,2,6,7896]
输出:2
解释:
12 是 2 位数字(位数为偶数)
345 是 3 位数字(位数为奇数)
2 是 1 位数字(位数为奇数)
6 是 1 位数字 位数为奇数)
7896 是 4 位数字(位数为偶数)
因此只有 12 和 7896 是位数为偶数的数字

示例 2:

输入:nums = [555,901,482,1771]
输出:1
解释:
只有 1771 是位数为偶数的数字。

解题思路

  1. 定义一个int变量count用于计数数组中位数为偶数的数字个数;
  2. 遍历数组元素,将其中的每个元素转换为字符串String类型;
  3. 对转换后的字符串长度进行判断,若字符串长度为偶数,则说明该字符串对应的数字位数为偶数,count加一;
  4. 遍历结束后,返回count即为数组中位数为偶数的数字个数;

实现

package Array;

/**
 * Created with IntelliJ IDEA.
 * Version : 1.0
 * Author  : cunyu
 * Email   : cunyu1024@foxmail.com
 * Website : https://cunyu1943.github.io
 * Date    : 2020/3/26 9:48
 * Project : LeetCode
 * Package : Array
 * Class   : OneTwoNineFive
 * Desc    : 1295. 统计位数为偶数的数字
 */
public class OneTwoNineFive {
	public static void main(String[] args) throws Exception {
		OneTwoNineFive oneTwoNineFive = new OneTwoNineFive();
		int[] nums = {12, 34, 546, 999, 34044};
		System.out.println(oneTwoNineFive.findNumbers(nums));
	}

	public int findNumbers(int[] nums) {
		int count = 0;
		for (int num : nums
		) {
			String strNum = String.valueOf(num);
			if (strNum.length() % 2 == 0) {
				count++;
			}
		}
		return count;
	}
}

发布了119 篇原创文章 · 获赞 72 · 访问量 14万+

没有更多推荐了,返回首页

©️2019 CSDN 皮肤主题: 1024 设计师: 上身试试

分享到微信朋友圈

×

扫一扫,手机浏览