| # | Time | Username | Problem | Language | Result | Execution time | Memory |
|---|---|---|---|---|---|---|---|
| 1329534 | shoryu386 | Self Study (JOI22_ho_t2) | C++20 | Compilation error | 0 ms | 0 KiB |
#include<bits/stdc++.h>
using namespace std;
typedef long long __int128;
typedef unsigned long long ull;
#define l(a, b, i) for (ll i = a; i < b; i++)
#define rl(a, b, i) for (ll i = a; i >= b; i--)
#define vpair vector<pair<ll, ll>>
#define inf LLONG_MAX
#define ninf LLONG_MIN
bool meow(long long X, long long N, long long M, vector<long long> &vecA, vector<long long> &vecB) {
ll maxtotal = N * M; // tổng số lessons accross các môn
ll cnt = 0; // nếu lát cnt > maxtotal thì false
l(1, N + 1, i) {
//ll cur = 0; // cur knowledge of this subject
bool pon; // môn này có đi học k, hay pon :D
if (vecB[i] >= vecA[i]) pon = true;
else pon = false;
if (pon) {
ll days = (X + vecB[i] - 1) / vecB[i];
cnt += days;
}
else if (!pon) {
if (X > M * vecA[i]) {
ll days = M;
ll left = X - M * vecA[i];
days += (left + vecB[i] - 1) / vecB[i];
cnt += days;
}
else {
ll days = (X + vecA[i] - 1) / vecA[i];
cnt += days;
}
}
}
return (cnt <= maxtotal);
}
int main() {
ios_base::sync_with_stdio(0); cin.tie(0); cout.tie(0);
//freopen("selfstudy.inp", "r", stdin);
//freopen("selfstudy.out", "w", stdout);
long long N, M; cin >> N >> M; vector<long long> vecA(N + 1, 0), vecB(N + 1, 0);
l(1, N + 1, i) cin >> vecA[i];
l(1, N + 1, i) cin >> vecB[i];
long long lo = 1, hi = 1e18; long long ans = 0;
while (lo <= hi) {
long long mid = (lo + hi) / 2;
if (meow(mid, N, M, vecA, vecB)) {
ans = mid;
lo = mid + 1;
}
else hi = mid - 1;
}
cout << ans;
}Compilation message (stderr)
Main.cpp:3:19: error: declaration does not declare anything [-fpermissive]
3 | typedef long long __int128;
| ^~~~~~~~
Main.cpp: In function 'bool meow(long long int, long long int, long long int, std::vector<long long int>&, std::vector<long long int>&)':
Main.cpp:12:5: error: 'll' was not declared in this scope; did you mean 'ull'?
12 | ll maxtotal = N * M; // tổng số lessons accross các môn
| ^~
| ull
Main.cpp:13:7: error: expected ';' before 'cnt'
13 | ll cnt = 0; // nếu lát cnt > maxtotal thì false
| ^~~~
| ;
Main.cpp:15:17: error: expected ';' before 'i'
15 | l(1, N + 1, i) {
| ^
Main.cpp:5:28: note: in definition of macro 'l'
5 | #define l(a, b, i) for (ll i = a; i < b; i++)
| ^
Main.cpp:15:17: error: 'i' was not declared in this scope
15 | l(1, N + 1, i) {
| ^
Main.cpp:5:35: note: in definition of macro 'l'
5 | #define l(a, b, i) for (ll i = a; i < b; i++)
| ^
Main.cpp:22:15: error: expected ';' before 'days'
22 | ll days = (X + vecB[i] - 1) / vecB[i];
| ^~~~~
| ;
Main.cpp:23:13: error: 'cnt' was not declared in this scope; did you mean 'int'?
23 | cnt += days;
| ^~~
| int
Main.cpp:23:20: error: 'days' was not declared in this scope; did you mean 'std::chrono::days'?
23 | cnt += days;
| ^~~~
| std::chrono::days
In file included from /usr/include/c++/13/chrono:41,
from /usr/include/x86_64-linux-gnu/c++/13/bits/stdc++.h:172,
from Main.cpp:1:
/usr/include/c++/13/bits/chrono.h:907:11: note: 'std::chrono::days' declared here
907 | using days = duration<_GLIBCXX_CHRONO_INT64_T, ratio<86400>>;
| ^~~~
Main.cpp:28:19: error: expected ';' before 'days'
28 | ll days = M;
| ^~~~~
| ;
Main.cpp:29:19: error: expected ';' before 'left'
29 | ll left = X - M * vecA[i];
| ^~~~~
| ;
Main.cpp:30:17: error: 'days' was not declared in this scope; did you mean 'std::chrono::days'?
30 | days += (left + vecB[i] - 1) / vecB[i];
| ^~~~
| std::chrono::days
/usr/include/c++/13/bits/chrono.h:907:11: note: 'std::chrono::days' declared here
907 | using days = duration<_GLIBCXX_CHRONO_INT64_T, ratio<86400>>;
| ^~~~
Main.cpp:31:17: error: 'cnt' was not declared in this scope; did you mean 'int'?
31 | cnt += days;
| ^~~
| int
Main.cpp:35:19: error: expected ';' before 'days'
35 | ll days = (X + vecA[i] - 1) / vecA[i];
| ^~~~~
| ;
Main.cpp:36:17: error: 'cnt' was not declared in this scope; did you mean 'int'?
36 | cnt += days;
| ^~~
| int
Main.cpp:36:24: error: 'days' was not declared in this scope; did you mean 'std::chrono::days'?
36 | cnt += days;
| ^~~~
| std::chrono::days
/usr/include/c++/13/bits/chrono.h:907:11: note: 'std::chrono::days' declared here
907 | using days = duration<_GLIBCXX_CHRONO_INT64_T, ratio<86400>>;
| ^~~~
Main.cpp:41:13: error: 'cnt' was not declared in this scope; did you mean 'int'?
41 | return (cnt <= maxtotal);
| ^~~
| int
Main.cpp:41:20: error: 'maxtotal' was not declared in this scope
41 | return (cnt <= maxtotal);
| ^~~~~~~~
Main.cpp: In function 'int main()':
Main.cpp:5:25: error: 'll' was not declared in this scope; did you mean 'ull'?
5 | #define l(a, b, i) for (ll i = a; i < b; i++)
| ^~
Main.cpp:51:5: note: in expansion of macro 'l'
51 | l(1, N + 1, i) cin >> vecA[i];
| ^
Main.cpp:51:14: error: the value of 'N' is not usable in a constant expression
51 | l(1, N + 1, i) cin >> vecA[i];
| ^
Main.cpp:5:39: note: in definition of macro 'l'
5 | #define l(a, b, i) for (ll i = a; i < b; i++)
| ^
Main.cpp:50:15: note: 'long long int N' is not const
50 | long long N, M; cin >> N >> M; vector<long long> vecA(N + 1, 0), vecB(N + 1, 0);
| ^
Main.cpp:51:14: error: the value of 'N' is not usable in a constant expression
51 | l(1, N + 1, i) cin >> vecA[i];
| ^
Main.cpp:5:39: note: in definition of macro 'l'
5 | #define l(a, b, i) for (ll i = a; i < b; i++)
| ^
Main.cpp:50:15: note: 'long long int N' is not const
50 | long long N, M; cin >> N >> M; vector<long long> vecA(N + 1, 0), vecB(N + 1, 0);
| ^
Main.cpp:51:14: error: the value of 'N' is not usable in a constant expression
51 | l(1, N + 1, i) cin >> vecA[i];
| ^
Main.cpp:5:39: note: in definition of macro 'l'
5 | #define l(a, b, i) for (ll i = a; i < b; i++)
| ^
Main.cpp:50:15: note: 'long long int N' is not const
50 | long long N, M; cin >> N >> M; vector<long long> vecA(N + 1, 0), vecB(N + 1, 0);
| ^
Main.cpp:51:14: error: the value of 'N' is not usable in a constant expression
51 | l(1, N + 1, i) cin >> vecA[i];
| ^
Main.cpp:5:39: note: in definition of macro 'l'
5 | #define l(a, b, i) for (ll i = a; i < b; i++)
| ^
Main.cpp:50:15: note: 'long long int N' is not const
50 | long long N, M; cin >> N >> M; vector<long long> vecA(N + 1, 0), vecB(N + 1, 0);
| ^
Main.cpp:51:14: error: the value of 'N' is not usable in a constant expression
51 | l(1, N + 1, i) cin >> vecA[i];
| ^
Main.cpp:5:39: note: in definition of macro 'l'
5 | #define l(a, b, i) for (ll i = a; i < b; i++)
| ^
Main.cpp:50:15: note: 'long long int N' is not const
50 | long long N, M; cin >> N >> M; vector<long long> vecA(N + 1, 0), vecB(N + 1, 0);
| ^
Main.cpp:51:14: error: the value of 'N' is not usable in a constant expression
51 | l(1, N + 1, i) cin >> vecA[i];
| ^
Main.cpp:5:39: note: in definition of macro 'l'
5 | #define l(a, b, i) for (ll i = a; i < b; i++)
| ^
Main.cpp:50:15: note: 'long long int N' is not const
50 | long long N, M; cin >> N >> M; vector<long long> vecA(N + 1, 0), vecB(N + 1, 0);
| ^
Main.cpp:51:14: error: the value of 'N' is not usable in a constant expression
51 | l(1, N + 1, i) cin >> vecA[i];
| ^
Main.cpp:5:39: note: in definition of macro 'l'
5 | #define l(a, b, i) for (ll i = a; i < b; i++)
| ^
Main.cpp:50:15: note: 'long long int N' is not const
50 | long long N, M; cin >> N >> M; vector<long long> vecA(N + 1, 0), vecB(N + 1, 0);
| ^
Main.cpp:51:14: error: the value of 'N' is not usable in a constant expression
51 | l(1, N + 1, i) cin >> vecA[i];
| ^
Main.cpp:5:39: note: in definition of macro 'l'
5 | #define l(a, b, i) for (ll i = a; i < b; i++)
| ^
Main.cpp:50:15: note: 'long long int N' is not const
50 | long long N, M; cin >> N >> M; vector<long long> vecA(N + 1, 0), vecB(N + 1, 0);
| ^
Main.cpp:51:14: error: the value of 'N' is not usable in a constant expression
51 | l(1, N + 1, i) cin >> vecA[i];
| ^
Main.cpp:5:39: note: in definition of macro 'l'
5 | #define l(a, b, i) for (ll i = a; i < b; i++)
| ^
Main.cpp:50:15: note: 'long long int N' is not const
50 | long long N, M; cin >> N >> M; vector<long long> vecA(N + 1, 0), vecB(N + 1, 0);
| ^
Main.cpp:51:17: error: 'i' was not declared in this scope
51 | l(1, N + 1, i) cin >> vecA[i];
| ^
Main.cpp:5:35: note: in definition of macro 'l'
5 | #define l(a, b, i) for (ll i = a; i < b; i++)
| ^
Main.cpp:5:25: error: 'll' was not declared in this scope; did you mean 'ull'?
5 | #define l(a, b, i) for (ll i = a; i < b; i++)
| ^~
Main.cpp:52:5: note: in expansion of macro 'l'
52 | l(1, N + 1, i) cin >> vecB[i];
| ^
Main.cpp:52:14: error: the value of 'N' is not usable in a constant expression
52 | l(1, N + 1, i) cin >> vecB[i];
| ^
Main.cpp:5:39: note: in definition of macro 'l'
5 | #define l(a, b, i) for (ll i = a; i < b; i++)
| ^
Main.cpp:50:15: note: 'long long int N' is not const
50 | long long N, M; cin >> N >> M; vector<long long> vecA(N + 1, 0), vecB(N + 1, 0);
| ^
Main.cpp:52:14: error: the value of 'N' is not usable in a constant expression
52 | l(1, N + 1, i) cin >> vecB[i];
| ^
Main.cpp:5:39: note: in definition of macro 'l'
5 | #define l(a, b, i) for (ll i = a; i < b; i++)
| ^
Main.cpp:50:15: note: 'long long int N' is not const
50 | long long N, M; cin >> N >> M; vector<long long> vecA(N + 1, 0), vecB(N + 1, 0);
| ^
Main.cpp:52:14: error: the value of 'N' is not usable in a constant expression
52 | l(1, N + 1, i) cin >> vecB[i];
| ^
Main.cpp:5:39: note: in definition of macro 'l'
5 | #define l(a, b, i) for (ll i = a; i < b; i++)
| ^
Main.cpp:50:15: note: 'long long int N' is not const
50 | long long N, M; cin >> N >> M; vector<long long> vecA(N + 1, 0), vecB(N + 1, 0);
| ^
Main.cpp:52:14: error: the value of 'N' is not usable in a constant expression
52 | l(1, N + 1, i) cin >> vecB[i];
| ^
Main.cpp:5:39: note: in definition of macro 'l'
5 | #define l(a, b, i) for (ll i = a; i < b; i++)
| ^
Main.cpp:50:15: note: 'long long int N' is not const
50 | long long N, M; cin >> N >> M; vector<long long> vecA(N + 1, 0), vecB(N + 1, 0);
| ^
Main.cpp:52:14: error: the value of 'N' is not usable in a constant expression
52 | l(1, N + 1, i) cin >> vecB[i];
| ^
Main.cpp:5:39: note: in definition of macro 'l'
5 | #define l(a, b, i) for (ll i = a; i < b; i++)
| ^
Main.cpp:50:15: note: 'long long int N' is not const
50 | long long N, M; cin >> N >> M; vector<long long> vecA(N + 1, 0), vecB(N + 1, 0);
| ^
Main.cpp:52:14: error: the value of 'N' is not usable in a constant expression
52 | l(1, N + 1, i) cin >> vecB[i];
| ^
Main.cpp:5:39: note: in definition of macro 'l'
5 | #define l(a, b, i) for (ll i = a; i < b; i++)
| ^
Main.cpp:50:15: note: 'long long int N' is not const
50 | long long N, M; cin >> N >> M; vector<long long> vecA(N + 1, 0), vecB(N + 1, 0);
| ^
Main.cpp:52:14: error: the value of 'N' is not usable in a constant expression
52 | l(1, N + 1, i) cin >> vecB[i];
| ^
Main.cpp:5:39: note: in definition of macro 'l'
5 | #define l(a, b, i) for (ll i = a; i < b; i++)
| ^
Main.cpp:50:15: note: 'long long int N' is not const
50 | long long N, M; cin >> N >> M; vector<long long> vecA(N + 1, 0), vecB(N + 1, 0);
| ^
Main.cpp:52:14: error: the value of 'N' is not usable in a constant expression
52 | l(1, N + 1, i) cin >> vecB[i];
| ^
Main.cpp:5:39: note: in definition of macro 'l'
5 | #define l(a, b, i) for (ll i = a; i < b; i++)
| ^
Main.cpp:50:15: note: 'long long int N' is not const
50 | long long N, M; cin >> N >> M; vector<long long> vecA(N + 1, 0), vecB(N + 1, 0);
| ^
Main.cpp:52:14: error: the value of 'N' is not usable in a constant expression
52 | l(1, N + 1, i) cin >> vecB[i];
| ^
Main.cpp:5:39: note: in definition of macro 'l'
5 | #define l(a, b, i) for (ll i = a; i < b; i++)
| ^
Main.cpp:50:15: note: 'long long int N' is not const
50 | long long N, M; cin >> N >> M; vector<long long> vecA(N + 1, 0), vecB(N + 1, 0);
| ^
Main.cpp:52:17: error: 'i' was not declared in this scope
52 | l(1, N + 1, i) cin >> vecB[i];
| ^
Main.cpp:5:35: note: in definition of macro 'l'
5 | #define l(a, b, i) for (ll i = a; i < b; i++)
| ^