Submission #6258175
Source Code Expand
#include <algorithm> #include <bitset> #include <cassert> #include <cstring> #include <iomanip> #include <iostream> #include <map> #include <queue> #include <random> #include <set> #include <stack> #include <vector> using namespace std; typedef long long ll; typedef pair<int, int> pii; typedef pair<unsigned char, unsigned char> pcc; typedef pair<double, double> pdd; typedef vector<vector<ll>> matrix; const long double PI = 2 * acos(0); int dp[200005]; int lis(vector<int> v) { if(v.empty()) return 0; dp[1] = 0; int ret = 1; for(int i = 1; i < v.size(); i++) { int lhs = 0; int rhs = ret; while(lhs != rhs) { int mid = (lhs+rhs+1)/2; if(v[i] > v[dp[mid]]) lhs = mid; else rhs = mid-1; } dp[++lhs] = i; ret = max(ret, lhs); } return ret; } pii l[200005]; void solve() { int xa, ya, xb, yb; cin >> xa >> ya >> xb >> yb; int n; cin >> n; for(int i = 0; i < n; i++) { cin >> l[i].first >> l[i].second; } sort(l, l+n); ll ret = 0; if(xa > xb) { swap(xa, xb); swap(ya, yb); } ret = abs(xa-xb) + abs(ya-yb); ret *= 100; bool rev = false; if(ya > yb) { swap(ya, yb); rev = true; } vector<int> v; for(int i = 0; i < n; i++) { if(l[i].first >= xa && l[i].first <= xb && l[i].second >= ya && l[i].second <= yb) { v.push_back(l[i].second); } } if(rev) reverse(v.begin(), v.end()); int amt = lis(v); ret -= 20 * amt; ll pis = 5 * amt; if(amt == (min(yb-ya, xb-xa) + 1)) { pis += 5; } cout << fixed << setprecision(17) << (ret+pis*PI) << "\n"; } void casesolve() { int t; cin >> t; for(int i = 1; i <= t; i++) { cout << "Case #" << i << ":" << "\n"; solve(); } } int main() { ios_base::sync_with_stdio(false); cin.tie(NULL); cout.tie(NULL); solve(); // casesolve(); }
Submission Info
Submission Time | |
---|---|
Task | C - Fountain Walk |
User | xiaowuc1 |
Language | C++14 (GCC 5.4.1) |
Score | 900 |
Code Size | 1926 Byte |
Status | AC |
Exec Time | 66 ms |
Memory | 4340 KB |
Judge Result
Set Name | Sample | All | ||||
---|---|---|---|---|---|---|
Score / Max Score | 0 / 0 | 900 / 900 | ||||
Status |
|
|
Set Name | Test Cases |
---|---|
Sample | sample_01.txt, sample_02.txt, sample_03.txt |
All | sample_01.txt, sample_02.txt, sample_03.txt, sample_01.txt, sample_02.txt, sample_03.txt, subtask_1_01.txt, subtask_1_02.txt, subtask_1_03.txt, subtask_1_04.txt, subtask_1_05.txt, subtask_1_06.txt, subtask_1_07.txt, subtask_1_08.txt, subtask_1_09.txt, subtask_1_10.txt, subtask_1_11.txt, subtask_1_12.txt, subtask_1_13.txt, subtask_1_14.txt, subtask_1_15.txt, subtask_1_16.txt, subtask_1_17.txt, subtask_1_18.txt, subtask_1_19.txt, subtask_1_20.txt, subtask_1_21.txt, subtask_1_22.txt, subtask_1_23.txt, subtask_1_24.txt, subtask_1_25.txt, subtask_1_26.txt, subtask_1_27.txt, subtask_1_28.txt, subtask_1_29.txt, subtask_1_30.txt, subtask_1_31.txt, subtask_1_32.txt, subtask_1_33.txt, subtask_1_34.txt, subtask_1_35.txt, subtask_1_36.txt, subtask_1_37.txt, subtask_1_38.txt, subtask_1_39.txt, subtask_1_40.txt, subtask_1_41.txt |
Case Name | Status | Exec Time | Memory |
---|---|---|---|
sample_01.txt | AC | 1 ms | 256 KB |
sample_02.txt | AC | 1 ms | 256 KB |
sample_03.txt | AC | 1 ms | 256 KB |
subtask_1_01.txt | AC | 1 ms | 256 KB |
subtask_1_02.txt | AC | 1 ms | 256 KB |
subtask_1_03.txt | AC | 1 ms | 256 KB |
subtask_1_04.txt | AC | 1 ms | 256 KB |
subtask_1_05.txt | AC | 1 ms | 256 KB |
subtask_1_06.txt | AC | 1 ms | 256 KB |
subtask_1_07.txt | AC | 1 ms | 256 KB |
subtask_1_08.txt | AC | 2 ms | 384 KB |
subtask_1_09.txt | AC | 19 ms | 768 KB |
subtask_1_10.txt | AC | 39 ms | 1408 KB |
subtask_1_11.txt | AC | 11 ms | 512 KB |
subtask_1_12.txt | AC | 63 ms | 4340 KB |
subtask_1_13.txt | AC | 42 ms | 1536 KB |
subtask_1_14.txt | AC | 19 ms | 768 KB |
subtask_1_15.txt | AC | 10 ms | 512 KB |
subtask_1_16.txt | AC | 62 ms | 4340 KB |
subtask_1_17.txt | AC | 34 ms | 1280 KB |
subtask_1_18.txt | AC | 27 ms | 1024 KB |
subtask_1_19.txt | AC | 27 ms | 1024 KB |
subtask_1_20.txt | AC | 60 ms | 4340 KB |
subtask_1_21.txt | AC | 62 ms | 4340 KB |
subtask_1_22.txt | AC | 63 ms | 4340 KB |
subtask_1_23.txt | AC | 62 ms | 4340 KB |
subtask_1_24.txt | AC | 1 ms | 256 KB |
subtask_1_25.txt | AC | 1 ms | 256 KB |
subtask_1_26.txt | AC | 1 ms | 256 KB |
subtask_1_27.txt | AC | 1 ms | 256 KB |
subtask_1_28.txt | AC | 51 ms | 1920 KB |
subtask_1_29.txt | AC | 53 ms | 1920 KB |
subtask_1_30.txt | AC | 66 ms | 3572 KB |
subtask_1_31.txt | AC | 38 ms | 3572 KB |
subtask_1_32.txt | AC | 46 ms | 4340 KB |
subtask_1_33.txt | AC | 45 ms | 3956 KB |
subtask_1_34.txt | AC | 41 ms | 3572 KB |
subtask_1_35.txt | AC | 57 ms | 3572 KB |
subtask_1_36.txt | AC | 55 ms | 3572 KB |
subtask_1_37.txt | AC | 53 ms | 4084 KB |
subtask_1_38.txt | AC | 54 ms | 3956 KB |
subtask_1_39.txt | AC | 56 ms | 3828 KB |
subtask_1_40.txt | AC | 50 ms | 3956 KB |
subtask_1_41.txt | AC | 47 ms | 3956 KB |