PTA—基础编程题目集(7-21)

7-21 求特殊方程的正整数解

目录

题目描述

输入格式:

输出格式:

输入样例1:

输出样例1:

输入样例2:

输出样例2:

参考代码

总结


题目描述

本题要求对任意给定的正整数N,求方程X2+Y2=N的全部正整数解。

输入格式:

输入在一行中给出正整数N(≤10000)。

输出格式:

输出方程X2+Y2=N的全部正整数解,其中X≤Y。每组解占1行,两数字间以1空格分隔,按X的递增顺序输出。如果没有解,则输出No Solution

输入样例1:

复制代码
884

输出样例1:

复制代码
10 28
20 22

输入样例2:

复制代码
11

输出样例2:

复制代码
No Solution

参考代码

cpp 复制代码
#include <iostream>

using namespace std;

int main() {
    int N, X, Y,flag=0;
    cin >> N;
    for (X = 0; X < 71; X++) {
        for (Y = X+1;Y<100; Y++) {
            if (N == X * X + Y * Y) {
                flag = 1;
                cout << X << " " << Y << endl;
            }
        }
    }
    if (flag == 0)  cout << "No Solution";
    return 0;
}

总结

注意X、Y的范围,X<71 ( 70*70=4900,71*71=5041,且X<Y ) ,还要判断是否有符合的X、Y。

其他题目,请看--->PTA---基础编程题目集

创作不易,如果我的文章对你有帮助,请点赞收藏关注,您的支持是我前进的最大动力。

相关推荐
运器1239 分钟前
【一起来学AI大模型】支持向量机(SVM):核心算法深度解析
大数据·人工智能·算法·机器学习·支持向量机·ai·ai编程
人生在勤,不索何获-白大侠11 分钟前
day16——Java集合进阶(Collection、List、Set)
java·开发语言
Zedthm18 分钟前
LeetCode1004. 最大连续1的个数 III
java·算法·leetcode
LIN-JUN-WEI29 分钟前
[ESP32]VSCODE+ESP-IDF环境搭建及blink例程尝试(win10 win11均配置成功)
c语言·开发语言·ide·vscode·单片机·学习·编辑器
神的孩子都在歌唱37 分钟前
3423. 循环数组中相邻元素的最大差值 — day97
java·数据结构·算法
YuTaoShao42 分钟前
【LeetCode 热题 100】73. 矩阵置零——(解法一)空间复杂度 O(M + N)
算法·leetcode·矩阵
望获linux1 小时前
【Linux基础知识系列】第四十三篇 - 基础正则表达式与 grep/sed
linux·运维·服务器·开发语言·前端·操作系统·嵌入式软件
眠りたいです1 小时前
Mysql常用内置函数,复合查询及内外连接
linux·数据库·c++·mysql
dying_man2 小时前
LeetCode--42.接雨水
算法·leetcode
笑鸿的学习笔记2 小时前
qt-C++语法笔记之Stretch与Spacer的关系分析
c++·笔记·qt