結果
問題 | No.1006 Share an Integer |
ユーザー |
![]() |
提出日時 | 2020-03-06 22:02:29 |
言語 | C++14 (gcc 13.3.0 + boost 1.87.0) |
結果 |
TLE
|
実行時間 | - |
コード長 | 761 bytes |
コンパイル時間 | 1,565 ms |
コンパイル使用メモリ | 168,960 KB |
実行使用メモリ | 17,332 KB |
最終ジャッジ日時 | 2024-10-14 06:58:21 |
合計ジャッジ時間 | 7,902 ms |
ジャッジサーバーID (参考情報) |
judge5 / judge2 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 8 TLE * 2 -- * 9 |
ソースコード
#include <bits/stdc++.h> #define all(v) v.begin(),v.end() #define eb emplace_back #define N 1000010 using namespace std; using ll=long long; using P=pair<int,int>; const ll INF=1LL<<30; inline void chmin(int &a,int b){a=min(a,b);} int dy[4]={0,-1,0,1}; int dx[4]={1,0,-1,0}; int to[4]={2,3,0,1}; int main(){ ios::sync_with_stdio(0); cin.tie(0); int x;cin>>x; vector<int> d(x+10); for(int i=1;i<=x;i++){ d[i]=i; for(int j=1;j*j<=i;j++){ if(i%j==0){ if(j==i/j){ d[i]--; }else{ d[i]-=2; } } } } int mi=INF; for(int a=1;a<x;a++){ int b=x-a; if(mi>abs(d[a]-d[b])){ mi=abs(d[a]-d[b]); } } for(int a=1;a<x;a++){ int b=x-a; if(abs(a-b)>3000)continue; if(mi==abs(d[a]-d[b])){ cout<<a<<" "<<b<<endl; } } }