/* HDU 3579 不一定互质情况,神牛公式解析链接:http://yzmduncan.iteye.com/blog/1323599 把推导过程翻译成代码即可... */#include<iostream> #include<cstdio> #include<cmath> using namespace std; typedef long long ll;
ll gcd(ll a,ll b){ if(b==0) return a; return gcd(b,a%b); }
ll kzgcd(ll a,ll b,ll&x,ll&y){ if(b==0) { x=1, y=0; return a; } ll d = kzgcd(b,a%b,x,y); ll k = y; y = x - a/b*y; x = k; return d; }
ll inv(ll a,ll b){ /// 求 a 的逆元 整数最小x ll x,y; ll k = kzgcd(a,b,x,y); if(k!=1) return -1; return (x%b+b)%b; }
bool merge(ll a1,ll n1,ll&a2,ll&n2){ ll d = gcd(n1,n2); ll c = a2 - a1; if(c%d) return false; ll k = inv(n1/d,n2/d)*c/d; ll a,n; n = n1/d*n2; a = (n1*k+a1)%(n1*n2/d); a2 = a; n2 = n; return true; }
ll china_reminder(ll k,ll*a,ll*b){ /// 余数,mod数 ll n1=b[1],a1=a[1]; for(ll i=2;i<=k;i++){ ll nn,aa; nn = b[i], aa = a[i]; if(!merge(a1,n1,aa,nn)) return -1; n1 = nn; a1 = aa; } return (a1%n1+n1)%n1; }
int main(){ ll t,a[1110],b[1100]; int f; cin>>f; for(int ca=1;ca<=f;ca++){ cin>>t; for(ll i=1;i<=t;i++) cin>>b[i]; for(ll i=1;i<=t;i++) cin>>a[i]; printf("Case %d: ",ca); ll sum = china_reminder(t,a,b); if(!sum){ /// 特判... sum=1; for(int i=1;i<=t;i++) sum = sum*b[i]/gcd(sum,b[i]); } printf("%lld\n",sum); } }
final修饰的引用类型,引用不可以改变,但是它所指向的对象的内容可以改变。
public class P { public static void main(String[] args)throws Exception { final B a =new B(); System.out.println(a.o.hashCode()); c2(a); } public static void c2(B a)throws Exception{ Field f = a.getClass().getDeclaredField("o"); f.setAccessible(true); System.out.println(f.get(a).hashCode()); f.set(a, new Object()); System.out.println(a.o.hashCode()); } } class B{ final Object o =new Object(); }结果:
10039797 10039797 18378667
大家怎么看?
已有 0 人发表留言,猛击->>这里<<-参与讨论
ITeye推荐
- —软件人才免语言低担保 赴美带薪读研!—
数据库复习题
一、选择题
1.(B)是按照一定的数据模型组织的、长期存储在计算机内,可为多个用户共享的数据的集合。
(A)数据库系统 (B)数据库
(C)关系数据库 (D)数据库管理系统
2.数据库系统的基础是()。
(A)数据结构 (B)数据库管理系统
(C)操作系统 (D)数据模型
3.( )处于数据库系统的核心位置。
(A)数据字典 (B)数据库
(C)数据库管理系统 (D)数据库管理员
4.对数据库的操作要以( )内容为依据。
(A)数据模型 (B)数据字典
(C)数据库管理系统 (D)运行日志
5.查询处理最复杂的最重要的部分是( )。
(A)检查是否存在所查询的关系(B)检查该操作是否在合法的授权范围内
(C)确定查询路径 (D)查询优化
6.有了模式/内模式的映象,可以保证数据和应用程序之间的( )。
(A)逻辑独立性 (B)物理独立性
(C)数据一致性 (D)数据安全性
7.( )是数据库中全部数据的逻辑结构和特征的描述。
(A)模式
(