前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >【第21题】韦达定理解决[CSP-J 2022] 解密

【第21题】韦达定理解决[CSP-J 2022] 解密

作者头像
小码匠
发布2023-08-31 14:14:45
1950
发布2023-08-31 14:14:45
举报

题目:[CSP-J 2022] 解密

题目原文请移步下面的链接

  • https://www.luogu.com.cn/problem/P8814
    • 参考题解:https://www.luogu.com.cn/problem/solution/P8814
  • 标签:数学
  • 难度:普及-

题解

思路
  • 这道题难点在于公式推导,推导过程请参照下面链接的题解
    • https://www.luogu.com.cn/problem/solution/P8814
代码
代码语言:javascript
复制
#include <bits/stdc++.h>

using namespace std;
// 101 126 159
int main()
{
//    freopen("decode.in", "r", stdin);
//    freopen("decode.out", "w", stdout);
    int k;
    scanf("%d", &k);
    long long n, d, e;
    for (int j = 0; j < k; ++j) {
    	bool b = false;
    	scanf("%lld%lld%lld", &n, &d, &e);
    	long long m = n + 2 - d * e;
        long long q = (m + sqrt(m * m - 4 * n)) / 2;
        long long p = (m - sqrt(m * m - 4 * n)) / 2;
    	if (q + p == m && q * p == n) {
            printf("%lld %lld\n", min(q, p), max(q, p));
        } else {
            printf("%s\n", "NO");
        }
	}
    
//    fclose(stdin);
//    fclose(stdout);
    return 0;
}

END

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2023-05-22,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 小码匠和老码农 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 题目:[CSP-J 2022] 解密
  • 题解
    • 思路
      • 代码
      领券
      问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档