>> 함수형 프로그래밍을 적극 활용하자
>> 나름 where, expand, reduce 사용법 좀 익히기 좋은 문제였던듯.. ㅎㅎ
import 'dart:math';
void makeList(int n, List<List<int>> p) {
for (int i = 1; i < n; i++) {
for (int j = 2; j < n; j++) {
int k = n - (i + j);
if (i < j && j < k) {
p.add([i, j, k]);
}
}
}
}
void main() {
List<List<int>> p = [];
makeList(1000, p);
var pita = p
.where((list) {
return (pow(list[0], 2) + pow(list[1], 2) == pow(list[2], 2));
})
.expand((list) => list)
.toList();
print(pita);
var mul = pita.reduce((a, b) => a * b);
print(mul);
}
'알고리즘' 카테고리의 다른 글
세자리 수를 곱해 만들 수 있는 가장 큰 대칭수 (0) | 2024.10.27 |
---|