tozangezan's diary

勝手にソースコードをコピペして利用しないでください。

SRM 611

失敗。

250
ちゃんと方針を立ててからコーディングしましょう・・・

public class LCMSet{
	int gcd(int a,int b){
		while(a>0){
			b%=a;
			int c=a;
			a=b;
			b=c;
		}
		return b;
	}
	public String equal(int[]a,int[]b){
		boolean ok=true;
		int c[][]=new int[50][100];
		int d[][]=new int[50][100];
		int szA[]=new int[50];
		int e[][]=new int[50][100];
		int f[][]=new int[50][100];
		int szB[]=new int[50];
		for(int i=0;i<a.length;i++){
			int now=a[i];
			for(int j=2;j*j<=now;j++){
				if(now%j==0){
					c[i][szA[i]]=j;
					while(now%j==0){
						now/=j;
						d[i][szA[i]]++;
					}
					szA[i]++;
				}
			}
			if(now>1){
				c[i][szA[i]]=now;
				d[i][szA[i]++]=1;
			}
		}
		for(int i=0;i<b.length;i++){
			int now=b[i];
			for(int j=2;j*j<=now;j++){
				if(now%j==0){
					e[i][szB[i]]=j;
					while(now%j==0){
						now/=j;
						f[i][szB[i]]++;
					}
					szB[i]++;
				}
			}
			if(now>1){
				e[i][szB[i]]=now;
				f[i][szB[i]++]=1;
			}
		}
		for(int i=0;i<a.length;i++){
			int M[]=new int[szA[i]];
			for(int j=0;j<b.length;j++){
				boolean OK=true;
				int at=0;
				for(int k=0;k<szB[j];k++){
					while(at<szA[i]&&e[j][k]!=c[i][at])at++;
					if(at==szA[i]||f[j][k]>d[i][at])OK=false;
				}
				if(OK){
					at=0;
					for(int k=0;k<szB[j];k++){
						while(at<szA[i]&&e[j][k]!=c[i][at])at++;
						M[at]=Math.max(M[at],f[j][k]);
					}
				}
			}
			for(int j=0;j<szA[i];j++)if(M[j]<d[i][j])ok=false;
		}
		for(int i=0;i<b.length;i++){
			int M[]=new int[szB[i]];
			for(int j=0;j<a.length;j++){
				boolean OK=true;
				int at=0;
				for(int k=0;k<szA[j];k++){
					while(at<szB[i]&&c[j][k]!=e[i][at])at++;
					if(at==szB[i]||d[j][k]>f[i][at])OK=false;
				}
				if(OK){
					at=0;
					for(int k=0;k<szA[j];k++){
						while(at<szB[i]&&c[j][k]!=e[i][at])at++;
						M[at]=Math.max(M[at],d[j][k]);
					}
				}
			}
			for(int j=0;j<szB[i];j++)if(M[j]<f[i][j])ok=false;
		}
		if(ok)return "Equal";
		return "Not equal";
	}
}

550
これ解けないのは仕方ないと思う

1000
 

Challenge Phase
自明に落ちるソート忘れのコードすらevimaさんに取られるし、SystemTestで2人も落ちるし、本当に何やってるんですかね・・・

202.03 (113th)
Rating: 2426 -> 2399 (-27)

どうやらはてなブログの文字色変更にはバグがあるっぽいなあ。前回指定した色を指定してOKを押しても反応しない。