洛谷P1154 奶牛分厩

 洛谷P1154 奶牛分厩

如果(a同余b)mod c;则 c|(a-b)。

n^2把每两个数之间的差求出来,做标记vis[cur]。

之后从n开始枚举k,如果对于当前k以及k在数域s内的倍数mk都不存在标记,那么当前值一定满足。

 1 #include <bits/stdc++.h>
 2 using namespace std;
 3 typedef long long ll;
 4 const int maxn=5000+5;
 5 
 6 
 7 int vis[1000000+5];
 8 int a[maxn];
 9 int main()
10 {
11     int n;scanf("%d",&n);
12     for(int i=1;i<=n;i++) scanf("%d",&a[i]);
13     for(int i=1;i<=n;i++)
14     {
15         for(int j=1;j<=n;j++)
16         {
17             if(i==j) continue;
18             vis[abs(a[i]-a[j])]=1;
19         }
20     }
21     for(int i=n;i<=1000000;i++)
22     {
23         if(!vis[i])
24         {
25             int flag=1;
26             for(int j=i;j<=1000000;j+=i)
27             {
28                 if(vis[j]) 
29                 {
30                     flag=0;break;
31                 }
32             }
33             if(flag)
34             {
35                 printf("%d\n",i);
36                 break;
37             }
38         }
39     }
40     return 0;
41 }

 

转载于:https://www.cnblogs.com/Msmw/p/11319995.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值