Районная олимпиада по информатике. 2016-2017 учебный год.


Задача C. Остатки

Ограничение по времени:
2 секунда
Ограничение по памяти:
64 мегабайта

Даны целые числа $a,$ $b$ и $n.$ Требуется найти количество целых чисел $x$ таких, что $0 \le x < n$ и число $a\cdot x$ при делении на $n$ дает остаток $b.$
Формат входного файла
Единственная строка входного файла содержит три целых числа разделенных пробелом: $a,$ $b$ и $n$ $(0 \le n \le 100000,$ $0 \le a, b < 100000).$
Формат выходного файла
Выведите ответ к задаче.
Примеры:
Вход
3 0 6
Ответ
3
посмотреть в олимпиаде

Комментарий/решение:

  1
2018-11-26 21:42:00.0 #

показать/скрыть код

  0
2019-11-30 23:47:29.0 #

показать/скрыть код

пред. Правка 2   1
2022-01-18 11:17:59.0 #

DELETED

  0
2021-10-10 21:04:29.0 #

показать/скрыть код

  0
2021-12-13 12:32:08.0 #

показать/скрыть код

#include<bits/stdc++.h>

using namespace std ;

int main () {

int n , m , k , cnt = 0 ;

cin >> n >> m >> k ;

for(int i = 1 ; i <= k ; i++){

if(n * i % k == m){

cnt++ ;

}

}

cout << cnt ;

}

  0
2022-12-12 18:56:39.0 #

#include<bits/stdc++.h>

using namespace std;

#define ll long long int

int main () {

ios_base::sync_with_stdio(0);

cin.tie(0);cout.tie(0);

ll a, b,n, ans=0;

cin>>a>>b>>n;

for(ll i=0;i<n;i++)

if((i*a)%n==b)ans++;

cout<<ans;

}

  0
2022-12-26 22:24:15.0 #

a,b,n=map(int,input().split())

k=0

for x in range(n):

if a*x%n==b:

k+=1

print(k)

  0
2023-12-16 00:13:58.0 #

a,b,n = map(int,input().split())

c=0

for x in range(n):

if a*x%n==b:

c+=1

print(c)