摘要: a数组共n个数,去重剩m个 离散化: void discrete() { sort(a+1,a+n+1); for(int i=1;i<=n;i++) if(i==1||a[i]!=a[i-1]) b[++m]=a[i]; } 查询x为1到m中哪一个: int query(int x) { retu 阅读全文
posted @ 2020-01-15 14:19 ChildeZhe 阅读(144) 评论(0) 推荐(0)
摘要: 单调递增序列a中查找>=x的数中最小的一个 while(l<r) { int mid=(l+r)>>1; if(a[mid]>=x) r=mid;else l=mid+1; } return a[l]; 单调递增序列a中查找<=x的数中最大的一个 while(l<r) { int mid=(l+r+ 阅读全文
posted @ 2020-01-15 14:12 ChildeZhe 阅读(308) 评论(0) 推荐(1)
摘要: int power(int a,int b,int p) //(a^b) mod p { int ans=1%p; for(;b;b>>=1) { if(b&1) ans=(long long)ans*a%p; a=(long long)a*a%p; } return ans; } 阅读全文
posted @ 2020-01-15 13:48 ChildeZhe 阅读(177) 评论(0) 推荐(0)