Submission #514769
Source Code Expand
#include <iostream>
#include <stdio.h>
#include <set>
#include <map>
#include <list>
#include <vector>
#include <algorithm>
#include <cmath>
#include <limits.h>
#include <string>
#include <queue>
#include <functional>
#include <stack>
#include <complex>
#include <stdlib.h>
#include <string.h>
using namespace std;
namespace{
#define CAST( T, val ) ( (T)( val ) )
#define CASE( lb ) break; case lb:
#define CASE_CONTINUE( lb ) case lb:
#define CASE_DEFAULT break; default:
#define For( i, s ) for(int i= 0; i< (int)s; i++)
#define ForA( i, a, s ) for(int i= (int)a; i< (int)s; i++)
#define ForSize( i, s ) for(int i= 0, size= (int)s; i< size; i++)
#define ForSizeA( i, a, s ) for(int i= (int)a, size= (int)s; i< size; i++)
#define ForItr( itr, con ) for(auto itr= con.begin(); itr!= con.end(); itr++)
#define ForStr( i, str ) for(int i= 0; str[i]; i++)
#define GOTO( lb ) goto lb
#define LABEL( lb ) lb:
#define ALL( con ) con.begin(), con.end()
typedef long long LLint;
typedef unsigned int Uint;
typedef unsigned char Uchar;
typedef unsigned short Ushort;
const int Ten5 = 100000; // 10^5
const int Ten6 = 1000000; // 10^6
const double EPS = 0.00000000023283064365386962890625; // 2^-32
template <typename T> class priority_queue_less : public priority_queue < T, vector<T>, greater<T> > {};
}
bool isCanClear(const int N, const int t, const int* L, const int R)
{
int r= 0;
For( n, N ){
const int l= max( L[n]-r, 0 );
if( l > t ) return false;
r= max( t-2*l, ( t-l ) >> 1 );
}
return r>=R;
}
int main()
{
int N, L[Ten5], R;
LLint T;
cin>> T>> N;
int M, p= 0;
For( n, N ){
cin>> M;
L[n]= M-p-1;
p= M;
}
R= T-M;
T= T/2*3+1;
LLint bot= 0, top= T;
while(1){
if( top <= bot ) break;
const LLint mid= ( top +bot ) >> 1;
if( isCanClear( N, mid, L, R ) ){
top= mid;
}else{
bot= mid+1;
}
}
cout<< bot<< endl;
return 0;
}
Submission Info
| Submission Time | |
|---|---|
| Task | D - 壊れた電車 |
| User | BGSC |
| Language | C++11 (GCC 4.9.2) |
| Score | 100 |
| Code Size | 2015 Byte |
| Status | AC |
| Exec Time | 112 ms |
| Memory | 1316 KiB |
Judge Result
| Set Name | Sample | Dataset1 | Dataset2 | Dataset3 | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Score / Max Score | 0 / 0 | 20 / 20 | 60 / 60 | 20 / 20 | ||||||||
| Status |
|
|
|
|
| Set Name | Test Cases |
|---|---|
| Sample | sample-01.txt, sample-02.txt |
| Dataset1 | sample-01.txt, sample-02.txt, 01-01.txt, 01-02.txt, 01-03.txt, 01-04.txt, 01-05.txt, 01-06.txt, 01-07.txt, 01-08.txt, 01-09.txt, 01-10.txt, 01-11.txt, 01-12.txt, 01-13.txt, 01-14.txt, 01-15.txt |
| Dataset2 | sample-01.txt, sample-02.txt, 01-01.txt, 01-02.txt, 01-03.txt, 01-04.txt, 01-05.txt, 01-06.txt, 01-07.txt, 01-08.txt, 01-09.txt, 01-10.txt, 01-11.txt, 01-12.txt, 01-13.txt, 01-14.txt, 01-15.txt, 02-01.txt, 02-02.txt, 02-03.txt, 02-04.txt, 02-05.txt, 02-06.txt, 02-07.txt, 02-08.txt, 02-09.txt, 02-10.txt, 02-11.txt, 02-12.txt, 02-13.txt, 02-14.txt, 02-15.txt, 02-16.txt, 02-17.txt, 02-18.txt, 02-19.txt |
| Dataset3 | sample-01.txt, sample-02.txt, 01-01.txt, 01-02.txt, 01-03.txt, 01-04.txt, 01-05.txt, 01-06.txt, 01-07.txt, 01-08.txt, 01-09.txt, 01-10.txt, 01-11.txt, 01-12.txt, 01-13.txt, 01-14.txt, 01-15.txt, 02-01.txt, 02-02.txt, 02-03.txt, 02-04.txt, 02-05.txt, 02-06.txt, 02-07.txt, 02-08.txt, 02-09.txt, 02-10.txt, 02-11.txt, 02-12.txt, 02-13.txt, 02-14.txt, 02-15.txt, 02-16.txt, 02-17.txt, 02-18.txt, 02-19.txt, 03-01.txt, 03-02.txt, 03-03.txt, 03-04.txt, 03-05.txt, 03-06.txt, 03-07.txt, 03-08.txt, 03-09.txt, 03-10.txt, 03-11.txt, 03-12.txt, 03-13.txt, 03-14.txt, 03-15.txt, 03-16.txt, 03-17.txt, 03-18.txt, 03-19.txt, 03-20.txt, 03-21.txt, 03-22.txt |
| Case Name | Status | Exec Time | Memory |
|---|---|---|---|
| 01-01.txt | AC | 28 ms | 924 KiB |
| 01-02.txt | AC | 28 ms | 796 KiB |
| 01-03.txt | AC | 26 ms | 920 KiB |
| 01-04.txt | AC | 28 ms | 928 KiB |
| 01-05.txt | AC | 27 ms | 924 KiB |
| 01-06.txt | AC | 30 ms | 856 KiB |
| 01-07.txt | AC | 27 ms | 920 KiB |
| 01-08.txt | AC | 26 ms | 924 KiB |
| 01-09.txt | AC | 27 ms | 800 KiB |
| 01-10.txt | AC | 27 ms | 932 KiB |
| 01-11.txt | AC | 26 ms | 920 KiB |
| 01-12.txt | AC | 28 ms | 932 KiB |
| 01-13.txt | AC | 26 ms | 924 KiB |
| 01-14.txt | AC | 25 ms | 928 KiB |
| 01-15.txt | AC | 26 ms | 920 KiB |
| 02-01.txt | AC | 28 ms | 924 KiB |
| 02-02.txt | AC | 30 ms | 792 KiB |
| 02-03.txt | AC | 26 ms | 924 KiB |
| 02-04.txt | AC | 33 ms | 1004 KiB |
| 02-05.txt | AC | 92 ms | 1256 KiB |
| 02-06.txt | AC | 59 ms | 996 KiB |
| 02-07.txt | AC | 92 ms | 1304 KiB |
| 02-08.txt | AC | 88 ms | 1124 KiB |
| 02-09.txt | AC | 86 ms | 1256 KiB |
| 02-10.txt | AC | 27 ms | 916 KiB |
| 02-11.txt | AC | 90 ms | 1248 KiB |
| 02-12.txt | AC | 92 ms | 1256 KiB |
| 02-13.txt | AC | 86 ms | 1252 KiB |
| 02-14.txt | AC | 88 ms | 1248 KiB |
| 02-15.txt | AC | 91 ms | 1184 KiB |
| 02-16.txt | AC | 90 ms | 1256 KiB |
| 02-17.txt | AC | 89 ms | 1256 KiB |
| 02-18.txt | AC | 89 ms | 1188 KiB |
| 02-19.txt | AC | 90 ms | 1256 KiB |
| 03-01.txt | AC | 28 ms | 924 KiB |
| 03-02.txt | AC | 27 ms | 916 KiB |
| 03-03.txt | AC | 27 ms | 808 KiB |
| 03-04.txt | AC | 109 ms | 1260 KiB |
| 03-05.txt | AC | 54 ms | 1000 KiB |
| 03-06.txt | AC | 66 ms | 1060 KiB |
| 03-07.txt | AC | 108 ms | 1260 KiB |
| 03-08.txt | AC | 98 ms | 1120 KiB |
| 03-09.txt | AC | 28 ms | 928 KiB |
| 03-10.txt | AC | 106 ms | 1252 KiB |
| 03-11.txt | AC | 108 ms | 1184 KiB |
| 03-12.txt | AC | 52 ms | 932 KiB |
| 03-13.txt | AC | 99 ms | 1192 KiB |
| 03-14.txt | AC | 108 ms | 1248 KiB |
| 03-15.txt | AC | 95 ms | 1312 KiB |
| 03-16.txt | AC | 109 ms | 1308 KiB |
| 03-17.txt | AC | 101 ms | 1188 KiB |
| 03-18.txt | AC | 111 ms | 1252 KiB |
| 03-19.txt | AC | 110 ms | 1256 KiB |
| 03-20.txt | AC | 112 ms | 1256 KiB |
| 03-21.txt | AC | 111 ms | 1316 KiB |
| 03-22.txt | AC | 110 ms | 1252 KiB |
| sample-01.txt | AC | 27 ms | 916 KiB |
| sample-02.txt | AC | 27 ms | 924 KiB |