답안 #983878

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
983878 2024-05-16T07:41:13 Z SyedSohaib_123 원 고르기 (APIO18_circle_selection) C++17
0 / 100
3000 ms 362220 KB
#include<bits/stdc++.h>



using namespace std;



#pragma GCC optimize("Ofast")
#pragma GCC optimize("unroll-loops")
#pragma GCC target("sse,sse2,sse3,ssse3,sse4,popcnt,abm,mmx,avx")



#define str string
#define append push_back
#define vector deque
#define vi vector<int>
#define int long long
#define yes cout<<"YES"<<endl;
#define no cout<<"NO"<<endl;
#define endl '\n'
#define all(ls) ls.begin(),ls.end()
#define sorted(ls) sort(ls.begin(),ls.end());
#define reversed(ls) reverse(ls.begin(),ls.end());
#define print(n) for(auto i:n)cout<<i<<' ';cout<<endl;
#define input(n,ls,m) deque<n>ls(m);for(int i=0;i<m;i++)cin>>ls[i];
#define len(s) s.size()
#define ff first
#define ss second
#define N (int const) 1e5+1
#define pii pair<int,int>
#define SQ(x) ((x)*(x))
#define float double


int mod=1e9+7;
int mod1=998244353;



int sum_(vector<int>ls){int s=0;for(auto i:ls){s+=i;}return s;}
int min(int a,int b){if (a>b){return b;}return a;}
int max(int a,int b){if (a<b){return b;}return a;}



//......................................tHe ReaL cOdE beGinS HerE....................................../




void solve(){
    int n;
    cin>>n;
    vector<int>plane[n+1];
    bool mp[n+1];
    for(int i=0;i<n;i++){
        input(int,a,3);
        mp[i]=0;
        a={a[2],n-i,a[0],a[1]};
        plane[i]=a;
    }
    sort(plane,plane+n);
    reverse(plane,plane+n);
    vi ans(n,0);
    for(int i=0;i<n;i++)
        ans[i]=i;
    for(int i=0;i<n;i++)
        plane[i][1]=n-plane[i][1];
    for(auto i:plane){
        if(mp[i[1]]) continue;
        mp[i[1]]=1;
        for(auto j:plane){
            if(i[1]==j[1] or mp[j[1]]){continue;}
            if(ceil(sqrtl(SQ(j[2]-i[2])+SQ(j[3]-i[3])))<=j[0]+i[0]){
                mp[j[1]]=1;
                ans[j[1]]=i[1];
            }
        }
    }
    for(auto i:ans){
        cout<<i+1<<' ';
    }
    cout<<endl;
}





signed main(){
    int t=1;
    // cin>>t;
    while(t--){
        solve();
    }
}
# 결과 실행 시간 메모리 Grader output
1 Correct 0 ms 348 KB Output is correct
2 Correct 0 ms 348 KB Output is correct
3 Correct 0 ms 348 KB Output is correct
4 Correct 0 ms 348 KB Output is correct
5 Correct 0 ms 348 KB Output is correct
6 Correct 1 ms 348 KB Output is correct
7 Correct 1 ms 348 KB Output is correct
8 Correct 1 ms 348 KB Output is correct
9 Incorrect 0 ms 348 KB Output isn't correct
10 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Correct 1129 ms 362220 KB Output is correct
2 Correct 1143 ms 362168 KB Output is correct
3 Correct 1065 ms 362020 KB Output is correct
4 Correct 1039 ms 362008 KB Output is correct
5 Execution timed out 3040 ms 360004 KB Time limit exceeded
6 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Correct 0 ms 348 KB Output is correct
2 Execution timed out 3088 ms 120180 KB Time limit exceeded
3 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Execution timed out 3062 ms 360020 KB Time limit exceeded
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Correct 0 ms 348 KB Output is correct
2 Correct 0 ms 348 KB Output is correct
3 Correct 0 ms 348 KB Output is correct
4 Correct 0 ms 348 KB Output is correct
5 Correct 0 ms 348 KB Output is correct
6 Correct 1 ms 348 KB Output is correct
7 Correct 1 ms 348 KB Output is correct
8 Correct 1 ms 348 KB Output is correct
9 Incorrect 0 ms 348 KB Output isn't correct
10 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Correct 0 ms 348 KB Output is correct
2 Correct 0 ms 348 KB Output is correct
3 Correct 0 ms 348 KB Output is correct
4 Correct 0 ms 348 KB Output is correct
5 Correct 0 ms 348 KB Output is correct
6 Correct 1 ms 348 KB Output is correct
7 Correct 1 ms 348 KB Output is correct
8 Correct 1 ms 348 KB Output is correct
9 Incorrect 0 ms 348 KB Output isn't correct
10 Halted 0 ms 0 KB -