Rumah > Artikel > pembangunan bahagian belakang > Program C: Selesaikan masalah berhenti
Pernyataan Masalah- Program yang mencari perhentian kereta api di stesen r daripada stesen n sedemikian rupa sehingga tiada dua perhentian berturut-turut.
Program ini akan mengira bilangan cara kereta api boleh berhenti, iaitu pilih atur. Di sini, kereta api akan bergerak dari titik X ke Y. Di antara titik ini, terdapat n tapak. Kereta api akan berhenti di stesen r di antara stesen n ini, dengan syarat apabila berhenti di stesen r, tren tidak boleh berhenti di dua stesen berturut-turut
Direct npr boleh digunakan. Formula mencari pilih atur ini.
Mari kita berikan beberapa contoh, p>
Input : n = 16 , r = 6 Output : 462
Penjelasan - Cari bilangan cara kereta api boleh berhenti di 6 stesen daripada 16 stesen yang memenuhi kriteria menggunakan formula pilih atur yang diberikan di bawah:
r atau p(n, r) = n! ∕ (n-r)!
AlgoritmaInput : total numbers of stations n and number of stations train can stop r. Step 1 : For values of n and r calculate the value of p(n,r) = n! / (n-r)! Step 2 : print the value of p(n,r) using std print method.
#include<stdio.h> int main(){ int n = 16, s = 6; printf("Total number of stations = %d</p><p>Number of stopping station = %d</p><p>", s, n); int p = s; int num = 1, dem = 1; while (p!=1) { dem*=p; p--; } int t = n-s+1; while (t!=(n-2*s+1)) { num *= t; t--; } if ((n-s+1) >= s) printf("Possible ways = %d", num / dem); else printf("no possible ways"); }
Total number of stations = 16 Number of stopping station = 6 Possible ways = 462🎜
Atas ialah kandungan terperinci Program C: Selesaikan masalah berhenti. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!