尧图网络 高端网站定制 · 原创设计
免费咨询热线
400-888-6620
免费获取方案
CSP-J 2023一元二次方程 题解
题目解析这道题对于学生来说很无语什么时候接一个方程都那么复杂了给定整数系数a,b,c(a!0)的一元二次方程ax^2bxc0判别式小于 0 输出NO。判别式大于等于 0 时输出两个实根中较大根严格按照题目有理数、根式化简格式输出。思路拆分先计算判别式delta b^2-4ac,如果delta0直接输出 NO如果delta0只有重根按最简分数输出。delta0如果delta是完全平方数根是有理数取较大根约分后按分数格式输出。delta不是完全平方数把根拆成q1q2\sqrt®对根号内部做平方因子化简再按复杂根式输出规则格式化打印。AC代码#includebits/stdc.husingnamespacestd;usinglllonglong;//输出最简分数 p/q保证分母0voidfs(ll p,ll q){if(p0){cout0;return;}if(q0){q-q;p-p;}ll g__gcd(abs(p),abs(q));p/g;q/g;if(q1)coutp;elsecoutp/q;}//对n分解出最大平方因子返回 {k , r} n k*k * rr无平方因子pairll,llgh(ll n){ll k1;for(ll i2;i*in;i){while(n%(i*i)0){k*i;n/i*i;}}return{k,n};}//输出 q2*sqrt(r) 这一部分q2 k / denvoidgen(ll k,ll r,ll den){// q2 k / denll g__gcd(k,abs(den));ll ck/g;ll dabs(den)/g;if(c1){if(d1)coutsqrt(r);elsecoutsqrt(r)/d;}else{if(d1)coutc*sqrt(r);elsecoutc*sqrt(r)/d;}}intmain(){ios::sync_with_stdio(false);cin.tie(nullptr);intt,m;cintm;while(t--){ll a,b,c;cinabc;ll deltab*b-4*a*c;if(delta0){coutNO\n;continue;}ll numer_q1-b;ll den2*a;if(delta0){fs(numer_q1,den);cout\n;continue;}ll sqsqrtl(delta);if(sq*sqdelta){//有理数根 (-b sqrtΔ) / (2a)fs(numer_q1sq,den);cout\n;}else{//拆 q1 q2√r// q1 (-b)/(2a)// q2√r sqrtΔ/(2a) k*sqrt(r)/denauto[k,r]gh(delta);if(numer_q1!0){fs(numer_q1,den);cout;}gen(k,r,den);cout\n;}}return0;}
RELATED

相关推荐

终极窗口大小调整工具:3分钟强制缩放那些“拖不动“的顽固窗口

终极窗口大小调整工具:3分钟强制缩放那些“拖不动“的顽固窗口

终极窗口大小调整工具:3分钟强制缩放那些"拖不动"的顽固窗口 【免费下载链接】WindowResizer 一个可以强制调整应用程序窗口大小的工具 项目地址: https://gitcode.com/gh_mirrors/wi/WindowResizer 你有没有过这样的经历:对着一个窗口…

📅 2026/10/6 23:05:53
6.图:多对多的非线性数据结构

6.图:多对多的非线性数据结构

一、什么是图? 图(Graph)是一种多对多的非线性数据结构,它由 ** 节点(Vertex)和边(Edge)** 组成: 节点:表示实体(如人、地点、设备)…

📅 2026/10/7 18:23:10
AI Agent驱动智能习惯养成:从监督到陪伴的产品架构与实现

AI Agent驱动智能习惯养成:从监督到陪伴的产品架构与实现

1. 这篇文章真正要解决的问题 你有没有过这样的经历?年初立下Flag要每天健身、学英语、读书,结果不到一个月就默默放弃。或者,你开发了一个帮助用户养成习惯的小程序,却发现用户活跃度断崖式下跌,根本“催不动”&#…

📅 2026/9/19 17:14:37
MORE NEWS

更多资讯

📰

OpenClaw 2.7.9 对接飞书机器人完整分步实操教程(含安装包)

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

📰

C语言循环控制:break、continue、goto的跳转机制与实战陷阱

不少学C语言的朋友走到系列第11篇,已经把顺序、分支这些基础结构拿捏得差不多了,一进入循环嵌套的实战场景就发愁:到底什么时候用break,什么时候用continue,那个被无数人念叨“不要用”的goto又是怎么回事。这篇就把循…

📰

AI编程工具深入使用:从代码补全到稳定高效工作流

1. 先把AI编程工具用明白:核心能力与选型思路AI编程工具这两年几乎是每个开发者的日常话题,但绝大多数人还停留在"让AI帮我写个函数、补全一段代码"的层面。跟你实话实说,我在早期也是这样,装上某款AI编程助手之后&…

📰

AI编程工具实战:从需求到上线的人机协作方法论

说实话,AI编程工具刚火起来那阵子,我心里是带着问号的。代码补全工具我试过,结论是“偶尔惊艳,经常添乱”。后来真正改变我想法的,不是哪一款工具突然变得多聪明,而是我调整了使用方式——从“让AI替我写代…

📰

TCN时间卷积神经网络在MATLAB故障诊断中的落地实践

简介:基于TCN时间卷积神经网络实现故障诊断的Matlab资源包,面向计算机、电子信息工程、数学等专业大学生,适用于课程设计、期末大作业或毕业设计。资源共8个文件,包含m主程序、xlsx案例数据集、png运行结果图和zip完整源码&#x…

📰

零基础AI漫剧制作全流程:从文案到量产的核心链路

1. 我在创作营里学到了什么:AI漫剧的核心生产链路先说结论:零基础做AI漫剧,最难的不是技术,而是“不知道完整流程长什么样”。我参加这个创作营之前,以为AI漫剧就是“AI画图配音”这么简单,真正上手才发现&…

TODAY

今日更新

THIS WEEK

本周精选

THIS MONTH

本月热门

读完文章,想聊聊您的网站?

告诉我们您的行业与需求,资深顾问一对一梳理方案与报价,全程免费。

📞 💬