Wannafly 22A

Posted sssy

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Wannafly 22A相关的知识,希望对你有一定的参考价值。

题解

另g = gcd(a1,a2,a3....)
那么k * g % m的方案书就是答案
这个式子子显然是有循环节的
x * g = 0 mod m ,x * g + y * m = 0
exgcd 后 x = x0 + k * (m/gcd(g,m)) 也是就m/gcd(g,m)

代码

#include<map> 
#include<cstdio> 
#include<algorithm> 
using namespace std; 
int n,m; 
int a[1007]; 
int gcd(int x,int y) { 
    if(!y) return x; 
    else return gcd(y,x % y); 
} 
int main() { 
    int n ,m;
    scanf("%d%d",&n,&m); int cnt = 0; 
    for(int i = 1;i <= n;++ i) {scanf("%d",a + i);if(a[i] > m)cnt ++; } 
    int num = m; 
    for(int i = 1;i <= n;++ i) num = gcd(a[i],num); 
    int ans = 0; 
    if(m % num) ans = (m / num) ; 
    else ans = m / num; 
    printf("%d
",ans); 
    return 0; 
} 

以上是关于Wannafly 22A的主要内容,如果未能解决你的问题,请参考以下文章

Wannafly挑战赛21A

Wannafly挑战赛4. B

Wannafly交流赛1(施工中)

NowCoder Wannafly挑战赛23 体验记

macOS Ventura beta 2 (22A5286j) Boot ISO 原版可引导镜像

Wannafly挑战赛14 F.细胞