Submission #58468269
Source Code Expand
#include <bits/stdc++.h> #include<ext/pb_ds/assoc_container.hpp> #include<ext/pb_ds/tree_policy.hpp> using namespace std; #define int long long #define sz(s) (int)s.size() #define sqrt sqrtl using namespace __gnu_pbds; typedef long long ll; const int N = 2e5 + 10 ; #define pb push_back #define all(x) x.begin(),x.end() #define ln '\n' #define endl '\n' #define sz(v) (long long)v.size() const int mod = 1000000007 ; template<class T> using ordered_set =tree<T, null_type, less<T>, rb_tree_tag,tree_order_statistics_node_update> ; //A.order_of_key(X)--> Finding No. of elements smaller than X //A.find_by_order(X)--> iterator of element present at the Xth index #define vll vector<ll> #define fl(i,n) for(int i=0;i<n;i++) #define double long double double euclideanDistance(int x1, int y1, int x2, int y2) { return sqrt((x2 - x1) * (x2 - x1) + (y2 - y1) * (y2 - y1)); } void solve() { int n, s, t; cin >> n >> s >> t; vector<array<int, 4>> segments(n); for (int i = 0; i < n; i++) { cin >> segments[i][0] >> segments[i][1] >> segments[i][2] >> segments[i][3]; } vector<int> perm(n); iota(perm.begin(), perm.end(), 0); double min_time = 1e18; do { double current_time = 0; int laser_x = 0, laser_y = 0; for (int i = 0; i < n; i++) { int idx = perm[i]; double move_time1 = euclideanDistance(laser_x, laser_y, segments[idx][0], segments[idx][1]) / s; double move_time2 = euclideanDistance(laser_x, laser_y, segments[idx][2], segments[idx][3]) / s; double print_time1 = euclideanDistance(segments[idx][0], segments[idx][1], segments[idx][2], segments[idx][3]) / t; double print_time2 = euclideanDistance(segments[idx][2], segments[idx][3], segments[idx][0], segments[idx][1]) / t; if (move_time1 + print_time1 < move_time2 + print_time2) { current_time += move_time1 + print_time1; laser_x = segments[idx][2]; laser_y = segments[idx][3]; } else { current_time += move_time2 + print_time2; laser_x = segments[idx][0]; laser_y = segments[idx][1]; } } min_time = min(min_time, current_time); } while (next_permutation(perm.begin(), perm.end())); cout << fixed << setprecision(30) << min_time << endl; } int32_t main(){ ios_base::sync_with_stdio(0),cin.tie(NULL),cout.tie(NULL); int t=1; while(t--) { solve(); } return 0; }
Submission Info
Submission Time | |
---|---|
Task | D - Laser Marking |
User | khushalmidha |
Language | C++ 20 (gcc 12.2) |
Score | 0 |
Code Size | 2639 Byte |
Status | WA |
Exec Time | 1 ms |
Memory | 3820 KiB |
Compile Error
Main.cpp:17: warning: "sz" redefined 17 | #define sz(v) (long long)v.size() | Main.cpp:8: note: this is the location of the previous definition 8 | #define sz(s) (int)s.size() |
Judge Result
Set Name | Sample | All | ||||||
---|---|---|---|---|---|---|---|---|
Score / Max Score | 0 / 0 | 0 / 350 | ||||||
Status |
|
|
Set Name | Test Cases |
---|---|
Sample | sample_01.txt, sample_02.txt, sample_03.txt, sample_04.txt |
All | sample_01.txt, sample_02.txt, sample_03.txt, sample_04.txt, test_01.txt, test_02.txt, test_03.txt, test_04.txt, test_05.txt, test_06.txt, test_07.txt, test_08.txt, test_09.txt, test_10.txt, test_11.txt, test_12.txt, test_13.txt, test_14.txt, test_15.txt, test_16.txt, test_17.txt, test_18.txt, test_19.txt, test_20.txt, test_21.txt, test_22.txt, test_23.txt, test_24.txt, test_25.txt, test_26.txt, test_27.txt, test_28.txt, test_29.txt, test_30.txt, test_31.txt, test_32.txt, test_33.txt, test_34.txt, test_35.txt, test_36.txt, test_37.txt, test_38.txt, test_39.txt, test_40.txt, test_41.txt, test_42.txt, test_43.txt, test_44.txt, test_45.txt, test_46.txt, test_47.txt, test_48.txt, test_49.txt, test_50.txt, test_51.txt, test_52.txt, test_53.txt, test_54.txt, test_55.txt, test_56.txt, test_57.txt, test_58.txt, test_59.txt, test_60.txt, test_61.txt, test_62.txt, test_63.txt, test_64.txt, test_65.txt, test_66.txt, test_67.txt, test_68.txt, test_69.txt, test_70.txt |
Case Name | Status | Exec Time | Memory |
---|---|---|---|
sample_01.txt | AC | 1 ms | 3808 KiB |
sample_02.txt | AC | 1 ms | 3796 KiB |
sample_03.txt | AC | 1 ms | 3692 KiB |
sample_04.txt | AC | 1 ms | 3696 KiB |
test_01.txt | WA | 1 ms | 3620 KiB |
test_02.txt | AC | 1 ms | 3692 KiB |
test_03.txt | AC | 1 ms | 3652 KiB |
test_04.txt | AC | 1 ms | 3712 KiB |
test_05.txt | AC | 1 ms | 3620 KiB |
test_06.txt | AC | 1 ms | 3652 KiB |
test_07.txt | WA | 1 ms | 3708 KiB |
test_08.txt | AC | 1 ms | 3716 KiB |
test_09.txt | AC | 1 ms | 3692 KiB |
test_10.txt | AC | 1 ms | 3744 KiB |
test_11.txt | AC | 1 ms | 3752 KiB |
test_12.txt | AC | 1 ms | 3780 KiB |
test_13.txt | AC | 1 ms | 3796 KiB |
test_14.txt | AC | 1 ms | 3692 KiB |
test_15.txt | WA | 1 ms | 3732 KiB |
test_16.txt | WA | 1 ms | 3728 KiB |
test_17.txt | WA | 1 ms | 3704 KiB |
test_18.txt | AC | 1 ms | 3676 KiB |
test_19.txt | AC | 1 ms | 3692 KiB |
test_20.txt | AC | 1 ms | 3792 KiB |
test_21.txt | AC | 1 ms | 3808 KiB |
test_22.txt | AC | 1 ms | 3724 KiB |
test_23.txt | AC | 1 ms | 3820 KiB |
test_24.txt | AC | 1 ms | 3692 KiB |
test_25.txt | AC | 1 ms | 3744 KiB |
test_26.txt | WA | 1 ms | 3816 KiB |
test_27.txt | AC | 1 ms | 3812 KiB |
test_28.txt | AC | 1 ms | 3808 KiB |
test_29.txt | AC | 1 ms | 3704 KiB |
test_30.txt | AC | 1 ms | 3728 KiB |
test_31.txt | AC | 1 ms | 3712 KiB |
test_32.txt | AC | 1 ms | 3652 KiB |
test_33.txt | WA | 1 ms | 3776 KiB |
test_34.txt | AC | 1 ms | 3696 KiB |
test_35.txt | AC | 1 ms | 3800 KiB |
test_36.txt | AC | 1 ms | 3800 KiB |
test_37.txt | AC | 1 ms | 3648 KiB |
test_38.txt | WA | 1 ms | 3812 KiB |
test_39.txt | AC | 1 ms | 3692 KiB |
test_40.txt | WA | 1 ms | 3812 KiB |
test_41.txt | AC | 1 ms | 3784 KiB |
test_42.txt | AC | 1 ms | 3732 KiB |
test_43.txt | AC | 1 ms | 3692 KiB |
test_44.txt | AC | 1 ms | 3804 KiB |
test_45.txt | AC | 1 ms | 3700 KiB |
test_46.txt | AC | 1 ms | 3740 KiB |
test_47.txt | AC | 1 ms | 3628 KiB |
test_48.txt | AC | 1 ms | 3804 KiB |
test_49.txt | AC | 1 ms | 3748 KiB |
test_50.txt | AC | 1 ms | 3812 KiB |
test_51.txt | AC | 1 ms | 3800 KiB |
test_52.txt | AC | 1 ms | 3668 KiB |
test_53.txt | AC | 1 ms | 3748 KiB |
test_54.txt | AC | 1 ms | 3812 KiB |
test_55.txt | AC | 1 ms | 3712 KiB |
test_56.txt | WA | 1 ms | 3748 KiB |
test_57.txt | AC | 1 ms | 3708 KiB |
test_58.txt | WA | 1 ms | 3740 KiB |
test_59.txt | WA | 1 ms | 3732 KiB |
test_60.txt | AC | 1 ms | 3688 KiB |
test_61.txt | AC | 1 ms | 3716 KiB |
test_62.txt | AC | 1 ms | 3732 KiB |
test_63.txt | AC | 1 ms | 3736 KiB |
test_64.txt | AC | 1 ms | 3652 KiB |
test_65.txt | WA | 1 ms | 3712 KiB |
test_66.txt | AC | 1 ms | 3752 KiB |
test_67.txt | AC | 1 ms | 3700 KiB |
test_68.txt | AC | 1 ms | 3732 KiB |
test_69.txt | AC | 1 ms | 3716 KiB |
test_70.txt | AC | 1 ms | 3816 KiB |