1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
#include<bits/stdc++.h>
using namespace std;
long long tab[31];
int main()
{ios_base::sync_with_stdio(0);cin.tie(0);cout.tie(0);
    int t;
    long long n,m;
    cin>>n>>m>>t;
    for(int i=1;i<=t;i++)
    {
        cin>>tab[i];
    }
    if(n%tab[1]!=0||m%tab[1]!=0){cout<<"-1"<<'\n';return 0;}
    long long wynik=0;
    for(int i=1;i<t;i++)
    {
        long long nn=(n%tab[i+1])/tab[i];
        long long mm=(m%tab[i+1])/tab[i];
        long long n2=n/tab[i];
        long long m2=m/tab[i];
        wynik+=nn*m2+mm*n2-nn*mm;
        n-=n%tab[i+1];
        m-=m%tab[i+1];
    }
    wynik+=(n/tab[t])*(m/tab[t]);
    cout<<wynik<<'\n';
    return 0;
}