結果
| 問題 | 
                            No.1339 循環小数
                             | 
                    
| コンテスト | |
| ユーザー | 
                             tails
                         | 
                    
| 提出日時 | 2021-01-15 22:20:36 | 
| 言語 | cLay  (20241019-1)  | 
                    
| 結果 | 
                             
                                AC
                                 
                             
                            
                         | 
                    
| 実行時間 | 45 ms / 2,000 ms | 
| コード長 | 407 bytes | 
| コンパイル時間 | 9,113 ms | 
| コンパイル使用メモリ | 222,184 KB | 
| 実行使用メモリ | 8,448 KB | 
| 最終ジャッジ日時 | 2024-07-05 14:57:25 | 
| 合計ジャッジ時間 | 10,377 ms | 
| 
                            ジャッジサーバーID (参考情報)  | 
                        judge1 / judge4 | 
(要ログイン)
| ファイルパターン | 結果 | 
|---|---|
| sample | AC * 1 | 
| other | AC * 36 | 
ソースコード
ll euler(ll a){
	ll p=a;
	ll i=2;
	while(a>1){
		if(a%i==0){
			p-=p/i;
		}
		while(a%i==0){
			a/=i;
		}
		++i;
		if(i*i>a){
			i=a;
		}
	}
	return p;
}
ll d[1d5];
{
	ll@t;
	rep(t){
		ll@n;
		while(n%2==0) n/=2;
		while(n%5==0) n/=5;
		if(n==1) wt(1),continue;
		Divisor(euler(n),d);
		modint x;
		x.setmod(n);
		ll a=0;
		while(1){
			x=10;
			x**=d[a];
			if(x==1) break;
			++a;
		}
		wt(d[a]);
	}
}
            
            
            
        
            
tails