SGU 119

题意:给你N、A0、B0,然后问所有X、Y,若A0X+B0Y能被N整除,则AX+BY也能被N整除,求所有的A、B.(0<=A、B<N)

收获:枚举

因为a0x+b0y=k1n,ax+by=k2n,所以,ax+by=k2/k1(a0x+b0y),所以我们枚举k(0~n-1),然后去重就行

#include<bits/stdc++.h>
#define de(x) cout<<#x<<"="<<x<<endl;
#define dd(x) cout<<#x<<"="<<x<<" ";
#define rep(i,a,b) for(int i=a;i<(b);++i)
#define repd(i,a,b) for(int i=a;i>=(b);--i)
#define repp(i,a,b,t) for(int i=a;i<(b);i+=t)
#define ll long long
#define mt(a,b) memset(a,b,sizeof(a))
#define fi first
#define se second
#define inf 0x3f3f3f3f
#define INF 0x3f3f3f3f3f3f3f3f
#define pii pair<int,int>
#define pdd pair<double,double>
#define pdi pair<double,int>
#define mp(u,v) make_pair(u,v)
#define sz(a) (int)a.size()
#define ull unsigned long long
#define ll long long
#define pb push_back
#define PI acos(-1.0)
#define qc std::ios::sync_with_stdio(false)
#define db double
#define all(a) a.begin(),a.end()
const int mod = 1e9+;
const int maxn = 1e5+;
const double eps = 1e-;
using namespace std;
bool eq(const db &a, const db &b) { return fabs(a - b) < eps; }
bool ls(const db &a, const db &b) { return a + eps < b; }
bool le(const db &a, const db &b) { return eq(a, b) || ls(a, b); }
ll gcd(ll a,ll b) { return a==?b:gcd(b%a,a); };
ll lcm(ll a,ll b) { return a/gcd(a,b)*b; }
ll kpow(ll a,ll b) {ll res=;a%=mod; if(b<) return ; for(;b;b>>=){if(b&)res=res*a%mod;a=a*a%mod;}return res;}
ll read(){
ll x=,f=;char ch=getchar();
while (ch<''||ch>''){if(ch=='-')f=-;ch=getchar();}
while (ch>=''&&ch<=''){x=x*+ch-'';ch=getchar();}
return x*f;
}
//inv[1]=1;
//for(int i=2;i<=n;i++) inv[i]=(mod-mod/i)*inv[mod%i]%mod;
pii ans[maxn];
int main(){
int n,a0,b0;
cin>>n>>a0>>b0;
rep(i,,n) ans[i]=mp(i*a0%n,i*b0%n);
sort(ans,ans+n);
n = unique(ans,ans+n) - ans;
printf("%d\n",n);
rep(i,,n) printf("%d %d\n",ans[i].fi,ans[i].se);
return ;
}

最新文章

  1. Java连接Oracle database小结
  2. [转]解决IIS下UTF-8文件报错乱码的问题
  3. mysql之高可靠
  4. 深入理解CSS中的层叠上下文和层叠顺序(转)
  5. 【视频处理】YUV格式说明
  6. android View事件分发机制结论
  7. Ogre2.1 灯光与阴影
  8. linq 学习笔记(一)
  9. switch vpn 配置
  10. POJ 2391.Ombrophobic Bovines (最大流)
  11. Python之路,Day21 - 常用算法学习
  12. Repeat Number
  13. chap1 C++泛型技术基础--模板 #STL
  14. 201521123026 《Java程序设计》第一周学习总结
  15. iOS-主线程刷新UI【+单例】
  16. python 库位置
  17. 即将上线的Imcash是何方神圣?
  18. Android视频录制命令screenrecord
  19. Linux命令之yum篇
  20. 后台管理界面admin

热门文章

  1. 一入python深似海--python之道
  2. 【C#】报表制作&amp;lt;机房重构&amp;gt;
  3. bzoj2127: happiness(双倍经验最小割)
  4. [学习笔记]node.js中的path.extname方法
  5. CUDA笔记(11)
  6. 51Nod 蜥蜴和地下室(搜索)
  7. js中return 、return false 、return true、break、continue区别
  8. 由防止表单重复提交引发的一系列问题--servletRequest的复制、body值的获取
  9. Dynamic Rankings(分块)
  10. Python学习笔记(1)--Windows基本环境搭建