| # | 제출 시각 | 아이디 | 문제 | 언어 | 결과 | 실행 시간 | 메모리 |
|---|---|---|---|---|---|---|---|
| 1329533 | shoryu386 | Self Study (JOI22_ho_t2) | C++20 | 컴파일 에러 | 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(ll X, ll N, ll M, vector<ll> &vecA, vector<ll> &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];
ll lo = 1, hi = 1e18; long long ans = 0;
while (lo <= hi) {
ll mid = (lo + hi) / 2;
if (meow(mid, N, M, vecA, vecB)) {
ans = mid;
lo = mid + 1;
}
else hi = mid - 1;
}
cout << ans;
}컴파일 시 표준 에러 (stderr) 메시지
Main.cpp:3:19: error: declaration does not declare anything [-fpermissive]
3 | typedef long long __int128;
| ^~~~~~~~
Main.cpp:11:11: error: 'll' was not declared in this scope; did you mean 'ull'?
11 | bool meow(ll X, ll N, ll M, vector<ll> &vecA, vector<ll> &vecB) {
| ^~
| ull
Main.cpp:11:17: error: 'll' was not declared in this scope; did you mean 'ull'?
11 | bool meow(ll X, ll N, ll M, vector<ll> &vecA, vector<ll> &vecB) {
| ^~
| ull
Main.cpp:11:23: error: 'll' was not declared in this scope; did you mean 'ull'?
11 | bool meow(ll X, ll N, ll M, vector<ll> &vecA, vector<ll> &vecB) {
| ^~
| ull
Main.cpp:11:36: error: 'll' was not declared in this scope; did you mean 'ull'?
11 | bool meow(ll X, ll N, ll M, vector<ll> &vecA, vector<ll> &vecB) {
| ^~
| ull
Main.cpp:11:38: error: template argument 1 is invalid
11 | bool meow(ll X, ll N, ll M, vector<ll> &vecA, vector<ll> &vecB) {
| ^
Main.cpp:11:38: error: template argument 2 is invalid
Main.cpp:11:41: error: 'vecA' was not declared in this scope
11 | bool meow(ll X, ll N, ll M, vector<ll> &vecA, vector<ll> &vecB) {
| ^~~~
Main.cpp:11:54: error: 'll' was not declared in this scope; did you mean 'ull'?
11 | bool meow(ll X, ll N, ll M, vector<ll> &vecA, vector<ll> &vecB) {
| ^~
| ull
Main.cpp:11:56: error: template argument 1 is invalid
11 | bool meow(ll X, ll N, ll M, vector<ll> &vecA, vector<ll> &vecB) {
| ^
Main.cpp:11:56: error: template argument 2 is invalid
Main.cpp:11:59: error: 'vecB' was not declared in this scope
11 | bool meow(ll X, ll N, ll M, vector<ll> &vecA, vector<ll> &vecB) {
| ^~~~
Main.cpp:11:63: error: expression list treated as compound expression in initializer [-fpermissive]
11 | bool meow(ll X, ll N, ll M, vector<ll> &vecA, vector<ll> &vecB) {
| ^
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++)
| ^
Main.cpp:54:5: error: 'll' was not declared in this scope; did you mean 'ull'?
54 | ll lo = 1, hi = 1e18; long long ans = 0;
| ^~
| ull
Main.cpp:55:12: error: 'lo' was not declared in this scope; did you mean 'log'?
55 | while (lo <= hi) {
| ^~
| log
Main.cpp:55:18: error: 'hi' was not declared in this scope
55 | while (lo <= hi) {
| ^~
Main.cpp:56:11: error: expected ';' before 'mid'
56 | ll mid = (lo + hi) / 2;
| ^~~~
| ;
Main.cpp:58:18: error: 'mid' was not declared in this scope
58 | if (meow(mid, N, M, vecA, vecB)) {
| ^~~
Main.cpp:58:17: error: 'meow' cannot be used as a function
58 | if (meow(mid, N, M, vecA, vecB)) {
| ~~~~^~~~~~~~~~~~~~~~~~~~~~~