Advertisement
Farjana_akter

Untitled

Feb 15th, 2019
104
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.50 KB | None | 0 0
  1. #include<bits/stdc++.h>
  2. using namespace std;
  3.  
  4.  
  5. string stringdiv(string s,int c)
  6. {
  7. string ans;
  8. int id=0;
  9. int num=s[id]-'0';
  10. while(num<c)
  11. num=(num*10)+(s[++id]-'0');
  12. while(s.size()>id)
  13. {
  14. ans+=((num/c)+'0');
  15. num=(num%c)*10 + (s[++id]-'0');
  16. }
  17. if(ans.length()==0)
  18. return "0";
  19. else
  20. return ans;
  21. }
  22. string stringadd(string a,string b)
  23. {
  24. if(a.length()>b.length())
  25. swap(a,b);
  26. string ans="";
  27. int len1=a.length();
  28. int len2=b.length();
  29. reverse(a.begin(),a.end());
  30. reverse(b.begin(),b.end());
  31. int i,j,k,sum=0,carry=0;
  32. for(i=0;i<len1;i++)
  33. {
  34.  
  35. sum=((a[i]-'0')+(b[i]-'0'))+carry;
  36. ans.push_back((sum%10)+'0');
  37. carry=sum/10;
  38. }
  39. for(i=len1;i<len2;i++)
  40. {
  41.  
  42. sum=((b[i]-'0'))+carry;
  43. ans.push_back((sum%10)+'0');
  44. carry=sum/10;
  45. }
  46. if(carry)
  47. ans.push_back(carry+'0');
  48. reverse(ans.begin(),ans.end());
  49. return ans;
  50. }
  51. int main()
  52. {
  53. string s,div,add;
  54. long long int n,f,i,j,k=0;
  55. while(scanf("%lld %lld",&n,&f)==2)
  56. {
  57. if(n==0||f==0)
  58. break;
  59. if(k>0)
  60. cout<<endl;
  61. k++;
  62. add="",div="";
  63. for(i=1;i<=n;i++)
  64. {
  65. cin>>s;
  66. add=stringadd(add,s);
  67. }
  68. div=stringdiv(add,f);
  69. cout<<"Bill #"<<k<<" costs "<<add<<": "<<"each friend should pay "<<div<<endl;
  70. }
  71. cout<<endl;
  72. return 0;
  73. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement