四舍五入的简单烦人题!!!

Python datetime模块实战:从蓝桥杯时间题到高效时间处理 时间处理是编程中的基础且高频需求,涉及日期解析、计算与格式化等核心概念。其原理在于将时间抽象为可操作的对象模型,通过封装底层复杂的日历逻辑(如闰年、时区)来保证计算的精确性。这一技术的核心价值在于将开发者从繁琐的时间算术中解放出来,极大提升开发效率和代码健壮性。在算法竞赛、数据分析、日志处理及日常业务系统等应用场景中,准确高效的时间处理至关重要。本文聚焦于Python内置的datetime模块,深入剖析其核心类如datetime和timedelta的使用,并重点讲解strptime与strftime在字符串 阅读详情

 

AC代码:

import java.io.*;
import java.math.BigInteger;
import java.text.DecimalFormat;
import java.util.*;
import java.util.stream.Collectors;

public class Main
{
    static PrintWriter pw = new PrintWriter(new BufferedWriter(new OutputStreamWriter(System.out)));
    static int N = (int)1e4 + 10;
    static int a[] = new int[N];
    static List<Integer> pass = new ArrayList<>();
    static List<Integer> excellent = new ArrayList<>();

    public static void main(String[] args ) throws IOException
    {
         int n = rd.nextInt();
         for(int i = 1 ; i <= n ; i ++)
         {
             int x = rd.nextInt();
             if(x >= 60)  pass.add(x);
             if(x >= 85)  excellent.add(x);
         }

         double pass_rate =  (double)pass.size() / n * 100;
         double excellent_rate = (double)excellent.size() / n * 100;

         int res1 = (int)(Math.round(pass_rate));
         int res2 = (int)Math.round(excellent_rate);

         pw.println(res1 + "%");
         pw.println(res2 + "%");

         pw.flush();
    }
}

class rd
{
    static BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
    static StringTokenizer tokenizer = new StringTokenizer("");

    static String nextLine() throws IOException { return reader.readLine(); }
    static String next() throws IOException
    {
        while(!tokenizer.hasMoreTokens())  tokenizer = new StringTokenizer(reader.readLine());
        return tokenizer.nextToken();
    }
    static int nextInt() throws IOException { return Integer.parseInt(next()); }
    static double nextDouble() throws IOException { return Double.parseDouble(next()); }
    static long nextLong() throws IOException { return Long.parseLong(next()); }
    static BigInteger nextBigInteger() throws IOException
    {
        BigInteger d = new BigInteger(rd.nextLine());
        return d;
    }
}

class math
{
    int gcd(int a,int b)
    {
        if(b == 0)  return a;
        else return gcd(b,a % b);
    }

    int lcm(int a,int b)
    {
        return a * b / gcd(a, b);
    }

    // 求n的所有约数
    List get_factor(int n)
    {
        List<Long> a = new ArrayList<>();
        for(long i = 1; i <= Math.sqrt(n) ; i ++)
        {
            if(n % i == 0)
            {
                a.add(i);
                if(i != n / i)  a.add(n / i);  // // 避免一下的情况:x = 16时,i = 4 ,x / i = 4的情况,这样会加入两种情况  ^-^复杂度能减少多少是多少
            }
        }

        // 相同因子去重,这个方法,完美
        a = a.stream().distinct().collect(Collectors.toList());

        // 对因子排序(升序)
        Collections.sort(a);

        return a;
    }

    // 判断是否是质数
    boolean check_isPrime(int n)
    {
        if(n < 2) return false;
        for(int i = 2 ; i <= n / i; i ++)  if (n % i == 0) return false;
        return true;
    }
}

class PII implements Comparable<PII>
{
    int x,y;
    public PII(int x ,int y)
    {
        this.x = x;
        this.y = y;
    }
    public int compareTo(PII a)
    {
        if(this.x-a.x != 0)
            return this.x-a.x;  //按x升序排序
        else return this.y-a.y;  //如果x相同,按y升序排序
    }
}

class Edge
{
    int a,b,c;
    public Edge(int a ,int b, int c)
    {
        this.a = a;
        this.b = b;
        this.c = c;
    }
}

class Line implements Comparable<Line>
{
    double k; // 斜率
    double b; // 截距

    public Line(double k, double b)
    {
        this.k = k;
        this.b = b;
    }

    @Override
    public int compareTo(Line o)
    {
        if (this.k > o.k) return 1;
        if (this.k == o.k)
        {
            if (this.b > o.b) return 1;
            return -1;
        }
        return -1;
    }
}

class mqm
{
    int fa[] = new int[1005];
    void init()
    {
        for(int i = 1 ; i <= 1000 ; i ++)  fa[i] = i;
    }
    void merge(int x, int y) { fa[find(x)] = find(y); }
    int find(int x)
    {
        if(x != fa[x])  fa[x] = find(fa[x]);
        return fa[x];
    }
    boolean query(int x, int y) { return find(x) == find(y); }
}

 

 

SQL 百分比格式化难题:为什么我的小数位不见了? 作为入行不久的新人,我们很容易把各种函数的功能搞混。当需要控制数字的显示格式时,不要依赖ROUND这样的数学计算函数,而应该使用FORMAT或TO_CHAR这样专门的类型转换和格式化函数。了解自己所用数据库的特性和常用函数,是写出健壮、可预测代码的关键。希望我的这点经验能帮到大家,让我们在编程的道路上一起成长,少走弯路! 阅读详情

相关推荐

合宙ESP32C3实战:MPU6500六轴传感器数据读取与校准全解析

本文详细解析了如何使用合宙ESP32C3开发板读取和校准MPU6500六轴姿态传感器数据。从硬件接线、开发环境搭建到核心代码解析,提供了全面的实战指南,帮助开发者快速掌握传感器配置与数据处理技巧,适用于姿态控制、运动检测等应用场景。

weixin_27066963的博客 405

四舍五入不够用,想要更细粒度的划分!

一般数值我们保留两位小数或者1位小数,相当于精度为 0.1 或者0.01,那么round的时候是四舍五入 round(a, 1) or round(a,2) 就结束。但是,我有很多很多的数据,是两位小数的,既要粒度细,又要粒度不这么细,还不要粒度粗到四舍五入怎么办?比如想要 0.2 一档,或者0.5一档,做一些数据的分组。小数整数分离不需要使用转化成varchar的形式,再搞什么截取,麻烦人,MySQL有自带函数,floor, 取整数,然后再把原值减去这个整数不就好了吗!类型,可以避免浮点数的精度误差。

weixin_47082271的博客 896

AI算力网络与通信领域流量分析:优化策略探讨_副本

今天的AI就像一个"超级吃货",每天要"吃"掉海量数据、“消耗"巨量算力——训练一个千亿参数的大模型,可能需要上万块GPU同时工作数周,其间产生的数据传输量足以填满数百万个1TB硬盘。这些GPU和计算节点通过网络连接形成"AI算力网络”,而数据在节点间的流动就是"通信流量"。如果把算力比作AI的"肌肉",那流量就是"血液"——血液不通畅,肌肉再强也使不上劲。

AI天才研究院 1198

js实现小数点后保留N位并可以四舍五入——js对float数据的处理

曾经遇到的两次的问题,关于前台接受后台传过来的float数据,一显示就是老长的小数点后缀,很烦人,后来想着用js把其进行四舍五入处理下,经网上查找,一哥们的代码如下:(很好用,感谢下!) functionformat_number(srcNumber, n) {//n是要保留的位数  vardstNumber = parseFloat(srcNumber);  if(isNaN(...

weixin_30587927的博客 188

阿里云大模型ACP认证模拟考试(三)

【摘要】:在阿里云大模型高级工程师 ACP 认证暂无真题题库的现状下,模拟题具有重要意义。其依照真实考试设计,涵盖题型、题量与分值分布,助力考生熟悉考试框架,合理分配答题时间精力,提升效率。同时,模拟题紧扣官方课程,能帮助考生精准定位知识盲点,如大模型架构原理和通义千问应用实践等重点内容,以便针对性完善知识体系。此外,通过练习模拟题,考生可掌握不同题型的解题思维与技巧,快速洞察复杂题目本质,提高答题准确率。

davidkorhenn的博客 3581

手把手教你用CV5200模块搭建无人机高清图传系统(含实测数据)

本文提供了一份基于CV5200模块搭建远距离无人机高清图传系统的完整实战指南。文章详细解析了系统架构、硬件连接、软件配置与优化,并分享了实地飞行测试数据。核心在于利用CV5200的LR-WiFi私有协议,在视距下实现数公里级的稳定高清视频传输,为DIY爱好者和行业应用提供了高性价比的解决方案。

day7的博客 720

python用r字符串阻止斜杠转义

1.windows中路径的斜杠是往左倾斜的,这个特别烦人,因为在代码里这个斜杠通常是转义的意思,改成右斜杠麻烦,加转义也一样,都需要一个一个改,那么有没有别的方法呢,今天看同事的代码,发现用r就可以解决,r代表不转义,如果不加r那么""中就需要加双反斜杠 如。3.四舍五入函数round,这个函数功能很强大,不但可以对小数位进行四舍五入,而且还可以对整数位进行四舍五入,这个就很好了,因为我想把29变成30,如果直接用round(29),结果还是29,需要加一个参数round(29,-1),这样就可以了。

人太健忘了,需要有个地方记录 482

数字IC行业笔试面试全攻略

数字IC行业迎来快速发展,国产替代加速,技术创新活跃,应用领域持续扩展,但人才缺口扩大。职业发展路径清晰,从初级到首席工程师/架构师的技术路线,或转向管理岗位。薪资待遇优厚,应届生起薪25-35W,5-10年经验可达70-110W,架构师年薪超百万。薪资受公司平台、技术方向、学历背景、项目经验和地域因素影响。AI芯片、汽车电子等热门方向溢价明显,成功流片经验尤其重要。

2301_79143213的博客 759

2级C注意事项:都是些烦人的细节和抠门问题

从一个程序的头部开始1.#define宏定义,标识符要注意,括号问题注意2.这里有的程序可能会定义形参,关于函数调用,最后如果有ruturn语句也需要小心3.输入scanf语句,注意的是当一次输入多个数据时候的间隔符,该什么形式就是什么形式;4.中间还有逻辑运算符,&&还有||,这个主要是表达式短路问题.  自增自减需要理解,配合逻辑运算符号的时候结果就需要小心了!附值符号"=

云海唯C的专栏 1305

BMS硬件设计核心:安全、精度与EMC的工程平衡

电池管理系统(BMS)是保障锂电安全运行的关键嵌入式子系统,其本质是在高精度模拟测量、实时故障响应与复杂电磁环境适应性之间达成工程平衡。原理上,BMS依赖专用监测芯片(如BQ76920)实现微秒级硬件保护,结合主控MCU(如STM32)完成策略决策与通信管理,形成‘安全协处理器+智能主控’双架构。技术价值体现在对过压/欠压/过流/温度等多维故障的毫秒级闭环处置能力,支撑SOC/SOH估算可信度与系统鲁棒性。典型应用场景涵盖电动工具、轻型电动车及储能模块等中低串数电池组。本文聚焦BMS控制板在时钟布局、电源滤

weixin_30591519的博客 70

在 SAP S/4HANA 分析模型中添加 Measures,Calculated、Restricted、Currency Conversion 与 Unit Conversion 的建模思路

摘要: SAP S/4HANA分析查询建模中,度量(measure)的加工层级是关键难点,涉及聚合时机、币种/单位语义、过滤上下文等复杂因素。度量不仅是数字字段,还需处理计算口径(Calculated Measures)、上下文绑定(Restricted Measures)和单位转换等问题。Calculated Measures适合派生指标(如毛利率),需注意聚合前后计算差异;Restricted Measures通过固化过滤条件(如区分实际/计划金额)确保业务语义一致性。建模时应将业务逻辑下沉到分析模型层

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 1022

nyoj1092数字分隔(二)

数字分隔(二) 时间限制:1000 ms  |  内存限制:65535 KB 难度:3描述 在一个遥远的国家,银行为了更快更好的处理用户的订单,决定将一整串的数字按照一定的规则分隔开来,分隔规则如下:1、实数的整数部分按照每三个数字用逗号分隔开(整数部分的高位有多余的0时,需先将多余的0过滤后,再进行数字分隔,如:0001234567 输出结果为1,234,567.00)2、小

>*,< 343

YOLOv11 改进 | 模块即插即用

YOLOv11 是一种单阶段目标检测算法,其核心设计目标在于实现检测速度与精度的平衡。其架构延续了 YOLO 系列“端到端”检测的思路,通过统一的网络结构完成特征提取、多尺度特征融合及最终的边界框预测与分类任务。骨干网络(Backbone)颈部网络(Neck)和检测头(Head)。骨干网络负责从输入图像中提取多层次的语义特征。

u012133341的博客 3121

C/C++蓝桥杯算法真题打卡(Day11)

C/C++蓝桥杯算法真题打卡(Day11)

祯的博客 517

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

蓝桥杯 第1天 基本语法训练(1)

目录 1.这是一道签到题 2.排列式 一.全排列做法 (1)python标准库的全排列函数 (2)解题 (3)全排列的自己实现(深度优先搜索) 3.小飞机 4.乘法表 5.KiKi学程序设计基础 6.疫情死亡率 7.爱因斯坦的名言 8.开学? 9.helloworld 10.a+b 11.反向输出一个四位数 12.计算三角形的周长和面积 1.这是一道签到题 print("zhe\nshi\nyi\ndao\nqian\ndao\nti") 2.排列式 这叫基..

aixiaoxiao13的博客 729

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

【 OJ 】 HDOJ1036 从字符数组内scanf [ 33 ]

这题被题目意思搞了个半死..... 后来发现意思为接力赛分n段跑,总距离d ,每个队伍t 的跑的时间分2段 总时间就是2个加起来 ,求平均每km的时间 (四舍五入) 突然发现不会用C++从....string里面读取出来h:m:s...一个个读取取出来好烦人....参考了人家c的....尼玛一个sscanf解决了  AC代码: # include&lt;iostream&gt; # in...

博客 290

温度PID控制PLC程序

温度PID稳定控制程序,适用于欧姆龙PLC,对其他PLC也具有很大参考价值

PAT1026 程序运行时间

要获得一个C语言程序的运行时间,常用的方法是调用头文件time.h,其中提供了clock()函数,可以捕捉从程序开始运行到clock()被调用时所耗费的时间。这个时间单位是clock tick,即“时钟打点”。同时还有一个常数CLK_TCK,给出了机器时钟每秒所走的时钟打点数。于是为了获得一个函数f的运行时间,我们只要在调用f之前先调用clock(),获得一个时钟打点数C1;在f执行完成后再调用cl

Cwsy_C的博客 303

怎么设置java的精度值_Java:如何为double值设置Precision?

本问题已经有最佳答案,请猛点这里访问。我最近正在处理数字,我有一种情况,我想将双精度值的精度设置为6位或4位,这取决于数据库中存储的值。例如,如果在数据库中,精度设置为4位,则输出必须如下所示:10.0000。我试过使用DecimalFormat和字符串##.####,但每次使用符号都很烦人。有没有更好的方法,比如说:Double value = 10.0;value.setPrecision(4...

weixin_39688170的博客 2293

天梯赛复习--输入输出

天梯赛字符处理很多,比如时间,整数与字符互转(+-'0') 格式控制以及输入1e5以上,用scanf和printf、putchar 无空格,连续字符串用cin省事 inline int read() { int x = 0; char c = getchar(); bool flag = 0; while(c < '0' || c > '9...

zjyang12345的博客 241

CUDA 有 unified memory 还需要内存优化吗?

CUDA 有 unified memory 还需要内存优化吗? 先说结论,不管有没有 unified memory,只要有性能要求的软件,都必需自己做优化。 因为 unified memory 的主要工作,并不是去掉了 Host Memory 与 Device Memory 之间的拷贝,而是将原有的需要人工手写的这部分代码,交给了运行时,使得这些工作对程序员透明,但是 Host2Device、Device2Host 的内存拷贝所造成的 overhead 依然存在。 其次,“内存优化”其实是一个非常宽泛的.

OneFlow深度学习框架 607

postgre java_使用Java的PostgreSQL上的Money数据

小编典典NUMERIC/DECIMAL正如JoachimIsaksson所说,您想使用NUMERIC/DECIMAL type作为任意精度类型。关于NUMERIC/的两个要点DECIMAL:请仔细阅读该文档,以了解您应指定小数位,以避免默认小数位0,即整数值,十进制小数会丢失。虽然这是Postgres偏离标准SQL的地方之一(使您可以扩展到实现限制)。因此,不指定比例尺是一个糟糕的选择。在SQL类...

weixin_39684995的博客 675

python apply函数_提升Python效率,这十个Pandas技巧必不可少!

【导语】Pandas 是一个被广泛使用,用于处理结构化数据的 Python 包。虽然已经有很多优质的教程供大家学习,但这次我还是想给大家介绍一些很酷的、可能还不为大家熟悉的技巧,我相信这些小技巧会提升大家处理数据时的效率。这是小编准备的python学习资料,关注,转发,私信小编“01”即可免费获取!1、read_csv大家都知道这个命令。但是,如果你要读取的数据量很大时,你可以尝试使用一下这个参数...

weixin_39783857的博客 385

复数乘法编程精解:从极坐标原理到浮点数精度处理实战

复数运算是数学和工程计算中的基础概念,尤其在信号处理、图形学和量子计算等领域应用广泛。其核心原理在于将复数视为平面上的点,通过直角坐标或极坐标进行表示与运算。在计算机实现中,浮点数精度是关键技术挑战,微小的舍入误差可能导致符号错误或格式不符。本文以一道经典的编程题为例,深入剖析极坐标下“模长相乘,辐角相加”的乘法规则,并详细讲解如何通过设定阈值进行精度归零处理,避免输出“-0.00”等常见错误。通过结合格式化输出和边界条件判断,展示了从数学理论到稳健代码的工程实践路径,为处理类似数值计算问题提供了可复用的解

weixin_34356555的博客 416

Android 颜色透明度大全

本文转载自:https://blog.youkuaiyun.com/hewuzhao/article/details/78821954,很实用,转载过来方便以后查阅,感谢原作者。 背景 开发的都知道,UI微调都是令人头痛的,尤其是颜色的微调。 如果视觉稿直接给颜色值那倒没啥,可怕的是后面还有标了透明度,而且视觉还原后发现颜色太透明了,要你透明度再调调,这才烦人。我总不能记住100个透明度的值吧。 一次...

阿亮的博客 2620
上一篇: Java-Math的API
下一篇: 最短路算法= =
21RGHLY
博客等级 码龄5年 44粉丝 169原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

21RGHLY

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值