Menu
Coddy logo textTech

ספירה

שיעור 17 מתוך 20 בקורס חידות מתמטיות של Coddy.

שלשה פיתגוראית {a, b, c} יוצרת משולש ישר־זווית. 

נסמן ב־p את ההיקף של משולש ישר־זווית שצלעותיו באורכים שלמים, {a, b, c}.

יש בדיוק שלשה אחת עבור p=12: {3,4,5}, עבור p=24: {6,8,10} ועבור p=30: {5,12,13}.

יש בדיוק שלוש שלשות עבור p = 120: {20,48,52}, {24,45,51}, {30,40,50}.

לעומת זאת, אין שלשה עבור p=20.

עבור p≤120, יש ערך אחד של p עם שלוש שלשות (p=120), שלושה ערכים של p עם שתי שלשות (p=60,84,90), ובדיוק 13 ערכים של p עם שלשה אחת בלבד.

challenge icon

אתגר

קשה

כמה ערכי p≤1000 יש עם שלשה אחת בלבד?

כתבו פונקציה count1PythagoreanTripletSolution שמקבלת מספר שלם N, ומחזירה את מספר המספרים השלמים p≤N שעבורם קיימת שלשה פיתגורית של מספרים שלמים אחת בלבד.

נסו בעצמכם

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <stdbool.h>
#include "solution.h"

int main() {
    int n;
    if (scanf("%d", &n) != 1) n = 0;
    int r = count1PythagoreanTripletSolution(n);
    printf("%d\n", r);
    return 0;
}

כל השיעורים ביחידה חידות מתמטיות

7הכפולה המשותפת הקטנה ביותר

מבואבעיה

10פלינדרומים

מבואאלגוריתם 196

2כפולות של 3 או 5

בעיהפתרון ללא לולאות

5משוואה דיופנטית

מבואבעיה

8שלשה פיתגורית

מבואמשולש ישר-זוויתספירה

6המחלק המשותף הגדול ביותר

מבואהאלגוריתם האוקלידיפונקציית פי

9מספרים בינאריים

מבוא

תרגלו בעצמכם: קומפיילר C אונליין