当前位置: 首页 > news >正文

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

题目

在这里插入图片描述

解法一

遍历数组挨个判断元素位数并统计(我的第一想法)

class Solution {
public:int findNumbers(vector<int>& nums) {int result = 0;for(int n: nums){if(judge(n)) result++;}return result;}bool judge(int a){int sum = 1;a = a / 10;while(a != 0){sum++;a = a / 10;}return (sum % 2 == 0)?1:0;}
};

解法二

把数字转换成字符串,判断字符串长度

class Solution {
public:int findNumbers(vector<int>& nums) {int result = 0;for(int n: nums){std::string str = std::to_string(n);result += (str.length() % 2 == 0) ? 1 : 0;}return result;}};

解法三

使用log10
这里注意要加1,假设 log10(123) = 2.02 123实际上是三位,所以要加一

class Solution {
public:int findNumbers(vector<int>& nums) {int result = 0;for(int n: nums){result += (((int)log10(n) + 1) % 2 == 0) ? 1 : 0;}return result;}};
http://www.xdnf.cn/news/233983.html

相关文章:

  • 大小写问题
  • 5.运输层
  • 解决在Mac上无法使用“ll”命令
  • python与c++变量赋值的区别
  • 【Linux庖丁解牛】—环境变量!
  • 深入解析词嵌入(Word2Vec、GloVe)技术原理:从词语到向量的转变
  • Transformer 模型及深度学习技术应用
  • Langchain+文本摘要-refine
  • Java零基础入门Day3:程序流程控制
  • Flowith:解放思维的AI画布让创意与效率如泉涌
  • 动画震动效果
  • 【Bootstrap V4系列】学习入门教程之 加载必要文件和入门模板
  • javascript 深拷贝和浅拷贝的区别及具体实现方案
  • 【每日八股】复习 Redis Day4:线程模型
  • NLP 分词技术学习
  • 【Dify系列教程重置精品版】第四章:实现Dify的 hello world
  • ISO 26262认证步骤
  • 【Java面试笔记:进阶】30.Java程序运行在Docker等容器环境有哪些新问题?
  • 楼宇智能化三、五章【期末复习】
  • 芯知识|小体积语音芯片方案WTV/WT2003H声音播放ic应用解析
  • 楼宇智能化四章【期末复习】
  • (eNSP)Smart Link配置实验
  • MicroPython for esp32s3开发HX711称重模块指南
  • rk3568 A/B系统 OAT升级 实践
  • 全面了解CSS语法 ! ! !
  • 聊一聊接口自动化测试断言处理策略
  • 用户意图驱动:GEO优化策略之内容精准匹配
  • PID中低通滤波算法的详细讲解
  • 消防岗位技能竞赛流程方案策划
  • verilog_testbench技巧