結果
問題 |
No.375 立方体のN等分 (1)
|
ユーザー |
![]() |
提出日時 | 2016-06-06 20:23:03 |
言語 | C++11(廃止可能性あり) (gcc 13.3.0) |
結果 |
TLE
|
実行時間 | - |
コード長 | 811 bytes |
コンパイル時間 | 681 ms |
コンパイル使用メモリ | 55,676 KB |
実行使用メモリ | 12,708 KB |
最終ジャッジ日時 | 2024-10-08 16:39:00 |
合計ジャッジ時間 | 7,131 ms |
ジャッジサーバーID (参考情報) |
judge1 / judge4 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 2 |
other | TLE * 1 -- * 31 |
ソースコード
#include<iostream> using namespace std; #define INF 10000000000000 #define NMAX 100000000000 #define SQRT_NMAX 316228 int main(){ long long N; long long Tmax,Tmin; bool zaru[SQRT_NMAX+1]; long long primen; long long prime[SQRT_NMAX]; primen=1; prime[0]=1; zaru[0]=false; for(int i=0;i<=SQRT_NMAX;i++) zaru[i]=true; for(int i=2;i<=SQRT_NMAX;i++){ if(zaru[i]){ prime[primen]=i; primen++; for(int j=i*2;j<=SQRT_NMAX;j+=i){ zaru[j]=false; } } } cin>>N; Tmax=-1; Tmin=INF; for(long long i=0;i<primen&&N>=prime[i];i++){ for(long long j=0;j<primen&&N>prime[i]*prime[j];j++){ if(N%((prime[i])*(prime[j]))==0){ long long n=N/((prime[i])*(prime[j]))-1+prime[i]-1+prime[j]-1; if(n>Tmax) Tmax=n; if(n<Tmin) Tmin=n; } } } cout<<Tmin<<" "<<Tmax<<endl; }