Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #define N 201
- using namespace std;
- typedef int Huge[N];
- void AtribValue(Huge H,unsigned long long int X)
- {
- H[0] = 0;
- while(X)
- ++H[0],H[H[0]]=X%10,X/=10;
- }
- void Mult(Huge H,int X) /// H <- H*X
- {
- int T=0;
- for(int i=1;i<=H[0];++i)
- H[i]=H[i]*X+T,T=H[i]/10,H[i]=H[i]%10;
- while (T) /// Cat timp exista transport
- H[++H[0]]=T%10,T/=10;
- }
- void Subtract(Huge A,Huge B) /// A <- A-B
- {
- int T=0;
- for(int i=B[0]+1;i<=A[0];)
- B[i++]=0;
- for(int i=1;i<=A[0];++i)
- A[i]+=(T=(A[i]-=B[i]+T)<0)
- ? 10:0;
- while(!A[A[0]])
- A[0]--;
- }
- void Afis(Huge A)
- {
- for(int i=A[0];i>0;--i)
- cout<<A[i];
- cout<<'\n';
- }
- int main()
- {
- unsigned long long int n;
- cin>>n;
- Huge A;
- AtribValue(A,n);
- Mult(A,2);
- Huge U;
- AtribValue(U,1);
- Subtract(A,U);
- Afis(A);
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement