Điểm:
900 (p)
Thời gian:
1.0s
Bộ nhớ:
256M
Input:
bàn phím
Output:
màn hình
Bạn được cho ba số nguyên dương \(a\), \(b\) và \(c\). Hãy tính tính phần dư của giá trị \((a \times b)\) khi chia cho \(c\).
Input
- Chứa ba số nguyên dương \(a\), \(b\) và \(c\) \((a,b,c \leq 10^{18})\).
Output
- Phần dư của giá trị \((a \times b)\) khi chia cho \(c\).
Test 1
Input
1 2 3
Output
2
Bình luận
tác giả rất hào phóng 🙂
pascal thì dùng mod là ra
dễ như này mà tận 900Đ
tại sao ghi ((a%c)*(b%c))%c lại sai vậy ạ
cách giải bài này nhé (dùng xâu)
include <bits/stdc++.h>
define ll long long
using namespace std;
string nhansoto(string s1,string s2)
{
int l1=s1.size();
int l2=s2.size();
string kq(l1+l2,48);
for(int i=l1-1;i>=0;--i)
{
for(int j=l2-1;j>=0;--j)
{
int mul=(s1[i]-48)*(s2[j]-48);
int x=mul+(kq[i+j+1] -48);
}
void laydusoto(string num,ll m)
{
vector<int>a;
ll mod=0;
for (int i=0;i<num.size();i++)
{
int digit=num[i]-48;
mod=mod*10+digit;
int z=mod/m;
a.push_back(z);
mod=mod%m;
}
cout<<mod; } int main() { string a,b; cin>>a;
cin>>b;
long long c;
cin>>c;
string s=nhansoto(a, b);
laydusoto(s,c);
return 0;
}
sao dễ thế
a, b, c = map(int, input().split())
print(a * b % c)
làm trong python 3
bài này cũng tương tự như bài Module 1
bài này tận 900 điểm =)
900 điểm free
3 bình luận nữa