#include "combinatorics.h" #include #define min(a, b) ((a) < (b) ? (a) : (b)) #define max(a, b) ((a) > (b) ? (a) : (b)) void print_table(long long n, long long r); int main() { long long n = 0, r = 0; if ( scanf("%lld %lld", &n, &r) != EOF ) print_table(n, r); return 0; } void swap(integer* a, integer* b) { integer tmp = *a; *a = *b; *b = tmp; } void print_table(integer n, integer r) { if ( r > n ) swap(&n, &r); printf(" No repetitions With repetitions\n"); printf("Permutations %20lld %20lld\n", permutations_no_repetition(n, r), permutations_with_repetition(n,r)); printf("Combinations %20lld %20lld\n", combinations_no_repetition(n, r), combinations_with_repetition(n,r)); }