Submission #1954200
Source Code Expand
#include <iostream>
#include <cstdio>
#include <algorithm>
#include <cmath>
using namespace std;
const int MAXN = 1e5 + 5;
int N, H, Ans;
struct Katana {
int A, B, Id;
}Set[MAXN];
inline bool cmpByA(const Katana &A, const Katana &B)
{
return A.A == B.A ? A.B > B.B : A.A > B.A;
}
inline bool cmpByB(const Katana &A, const Katana &B)
{
return A.B > B.B;
}
void CRASH(int X)
{
int A[10000000];
CRASH(X);
}
inline void Throw(int valueReduced)
{
if(H > valueReduced) H -= valueReduced, ++Ans;
else {
cout << Ans + 1 << endl;
CRASH(1);
exit(0);
}
}
inline void Wield(int wieldValue, int throwValue)
{
H -= throwValue, ++Ans;
if(H > 0){
Ans += H / wieldValue;
if((H % wieldValue))++Ans;
}
cout << Ans << endl;
}
int main()
{
scanf("%d%d", &N, &H);
for(int I = 1; I <= N; ++I)
scanf("%d%d", &Set[I].A, &Set[I].B), Set[I].Id = I;
sort(Set + 1, Set + N + 1, cmpByA);
int maxA = Set[1].A, maxBInMaxA = Set[1].B, maxAId = Set[1].Id;
sort(Set + 1, Set + N + 1, cmpByB);
for(int I = 1; I <= N; ++I)
if(Set[I].B > maxA){
if(Set[I].Id != maxAId)Throw(Set[I].B);
}else break;
Wield(maxA, maxBInMaxA);
return 0;
}
Submission Info
Submission Time |
|
Task |
D - Katana Thrower |
User |
DFPMTS |
Language |
C++ (GCC 5.4.1) |
Score |
0 |
Code Size |
1192 Byte |
Status |
WA |
Exec Time |
2103 ms |
Memory |
1408 KB |
Compile Error
./Main.cpp: In function ‘int main()’:
./Main.cpp:44:23: warning: ignoring return value of ‘int scanf(const char*, ...)’, declared with attribute warn_unused_result [-Wunused-result]
scanf("%d%d", &N, &H);
^
./Main.cpp:46:53: warning: ignoring return value of ‘int scanf(const char*, ...)’, declared with attribute warn_unused_result [-Wunused-result]
scanf("%d%d", &Set[I].A, &Set[I].B), Set[I].Id = I;
^
Judge Result
Set Name |
Sample |
All |
Score / Max Score |
0 / 0 |
0 / 400 |
Status |
|
|
Set Name |
Test Cases |
Sample |
a01, a02, a03, a04 |
All |
a01, a02, a03, a04, b05, b06, b07, b08, b09, b10, b11, b12, b13, b14, b15, b16, b17, b18, b19, b20, b21, b22, b23, b24 |
Case Name |
Status |
Exec Time |
Memory |
a01 |
AC |
1 ms |
256 KB |
a02 |
AC |
1 ms |
256 KB |
a03 |
AC |
1 ms |
256 KB |
a04 |
AC |
1 ms |
256 KB |
b05 |
AC |
1 ms |
256 KB |
b06 |
AC |
31 ms |
1408 KB |
b07 |
AC |
1 ms |
256 KB |
b08 |
AC |
31 ms |
1408 KB |
b09 |
AC |
1 ms |
256 KB |
b10 |
AC |
1 ms |
256 KB |
b11 |
AC |
1 ms |
256 KB |
b12 |
AC |
1 ms |
256 KB |
b13 |
AC |
22 ms |
1408 KB |
b14 |
WA |
22 ms |
1408 KB |
b15 |
AC |
22 ms |
1408 KB |
b16 |
AC |
22 ms |
1408 KB |
b17 |
AC |
36 ms |
1408 KB |
b18 |
AC |
33 ms |
1408 KB |
b19 |
AC |
27 ms |
1408 KB |
b20 |
TLE |
2103 ms |
1408 KB |
b21 |
TLE |
2103 ms |
1408 KB |
b22 |
AC |
34 ms |
1408 KB |
b23 |
AC |
1 ms |
256 KB |
b24 |
AC |
2 ms |
256 KB |