Menghitung
Pelajaran 17 dari 20 dalam kursus Teka-teki Matematika di Coddy.
Triplet Pythagoras {a, b, c} membentuk segitiga siku-siku.
Misalkan p adalah keliling segitiga siku-siku dengan panjang sisi bilangan bulat, {a, b, c}.
Tepat ada satu triplet untuk p=12: {3,4,5}, p=24: {6,8,10}, dan untuk p=30: {5,12,13}.
Tepat ada tiga triplet untuk p = 120: {20,48,52}, {24,45,51}, {30,40,50}.
Sebaliknya, tidak ada triplet untuk p=20.
Untuk p≤120, ada satu nilai p dengan tiga triplet (p=120), tiga nilai p dengan dua triplet (p=60,84,90), dan tepat 13 nilai p dengan hanya satu triplet.
Tantangan
SulitBerapa banyak p≤1000 yang memiliki tepat satu tripel?
Tulis fungsi count1PythagoreanTripletSolution yang menerima bilangan bulat N, lalu mengembalikan jumlah bilangan bulat p≤N yang memiliki tepat satu tripel Pythagoras bilangan bulat.
Coba sendiri
#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;
}
Semua pelajaran di Teka-teki Matematika
Latihan sendiri: Compiler C online