Pagini recente » Cod sursa (job #2549561) | Profil BlackNesta | Cod sursa (job #3277926) | Cod sursa (job #1077433) | Cod sursa (job #3260151)
#include <iostream>
using namespace std;
typedef int Huge[1000];
Huge H;
void Mult(Huge H, int a){
int T=0;
for(int i=1;i<=H[0];i++){
H[i] = H[i]*a+T;
T=H[i]/10;
H[i] = H[i]%10;
}
while(T>0){
H[++H[0]]=T%10;
T=T/10;
}
}
void Atrib_Huge(Huge H, int a){
H[0]=0;
while(a){
H[++H[0]]=a%10;
a/=10;
}
}
void Divide_Huge(Huge H, int a){
int R=0;
int i;
for(int i=H[0]; i>0; i--){
H[i] =(R*10+H[i]);
R=H[i]%a;
H[i]=H[i]/a;
}
i=H[0];
while(!H[i]){
H[0]--;i--;
}
}
void Print_Huge(Huge H){
for(int i=H[0]; i>=1;i--){
cout<<H[i];
}
}
void Comb_Huge(Huge H,int n, int k){
Atrib_Huge(H, 1);
for(int i=1; i<=k; i++){
Mult(H, n-i+1);
Divide_Huge(H,i);
}
}
int main()
{ int n,k;
cin>>n>>k;
Huge H;
Comb_Huge(H,n+k-1,k-1);
Print_Huge(H);
}