제출 #398960

#제출 시각아이디문제언어결과실행 시간메모리
398960Mohammed_Alsaad수열 (BOI14_sequence)C++17
0 / 100
3 ms588 KiB
#include <bits/stdc++.h> using namespace std; template <typename A, typename B> string to_string(pair<A, B> p); template <typename A, typename B, typename C> string to_string(tuple<A, B, C> p); template <typename A, typename B, typename C, typename D> string to_string(tuple<A, B, C, D> p); string to_string(const string &s) { return '"' + s + '"'; } string to_string(const char *s) { return to_string((string)s); } string to_string(bool b) { return (b ? "true" : "false"); } // string to_string(vector<bool> v) // { // bool first = true; // string res = "{"; // for (ll i = 0; i < static_cast<ll>(v.size()); i++) // { // if (!first) // { // res += ", "; // } // first = false; // res += to_string(v[i]); // } // res += "}"; // return res; // } template <size_t N> string to_string(bitset<N> v) { string res = ""; for (size_t i = 0; i < N; i++) { res += static_cast<char>('0' + v[i]); } return res; } template <typename A> string to_string(A v) { bool first = true; string res = "{"; for (const auto &x : v) { if (!first) { res += ", "; } first = false; res += to_string(x); } res += "}"; return res; } template <typename A, typename B> string to_string(pair<A, B> p) { return "(" + to_string(p.first) + ", " + to_string(p.second) + ")"; } template <typename A, typename B, typename C> string to_string(tuple<A, B, C> p) { return "(" + to_string(get<0>(p)) + ", " + to_string(get<1>(p)) + ", " + to_string(get<2>(p)) + ")"; } template <typename A, typename B, typename C, typename D> string to_string(tuple<A, B, C, D> p) { return "(" + to_string(get<0>(p)) + ", " + to_string(get<1>(p)) + ", " + to_string(get<2>(p)) + ", " + to_string(get<3>(p)) + ")"; } void dbg_out() { cout << endl; } template <typename Head, typename... Tail> void dbg_out(Head H, Tail... T) { cout << " " << to_string(H); dbg_out(T...); } #define FAST_IO \ ios_base::sync_with_stdio(false); \ cin.tie(NULL); \ cout.tie(NULL); #define dbg(...) cout << "[" << #__VA_ARGS__ << "]:", dbg_out(__VA_ARGS__) #define edl() cout << endl; #define rep(i, a, b) for (ll i = a; i < b; i++) #define all(x) x.begin(), x.end() #define rall(x) x.rbegin(), x.rend() #define pb push_back #define pf push_front #define F first #define S second #define max_self(x, y) x = max(x, y) #define min_self(x, y) x = min(x, y) typedef long long ll; ll const INF = 2147483647, R_INF = 9223372036854775807, MOD = 1e9 + 7; // const ll mxN = int main() { FAST_IO; ll n; cin >> n; vector<ll> input(n); rep(i, 0, n) cin >> input[i]; ll val = input.front() + !input.front(), ctr = 0; vector<ll> po(12); po[0] = 1; rep(i, 1, 12) po[i] = po[i - 1] * 10; while (po[ctr] < n) val *= 10, ctr++; if (input.front() == 9) { int sz = to_string(val).size(); rep(i, 1, sz) cout << 8; cout << 9; } else if (!input.front()) { string str = to_string(val); rep(i, 0, str.size()) if (str[i] == '0') str[i] = '1'; str.pop_back(); ll val2 = stoi(str); cout << val * (val2 >= n ? 1 : 10); } else cout << val; } /* */

컴파일 시 표준 에러 (stderr) 메시지

sequence.cpp: In function 'int main()':
sequence.cpp:92:39: warning: comparison of integer expressions of different signedness: 'll' {aka 'long long int'} and 'std::__cxx11::basic_string<char>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   92 | #define rep(i, a, b) for (ll i = a; i < b; i++)
......
  137 |         rep(i, 0, str.size()) if (str[i] == '0') str[i] = '1';
      |             ~~~~~~~~~~~~~~~~           
sequence.cpp:137:9: note: in expansion of macro 'rep'
  137 |         rep(i, 0, str.size()) if (str[i] == '0') str[i] = '1';
      |         ^~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...