답안 #370697

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
370697 2021-02-24T13:40:49 Z TosakaUCW Poklon (COCI17_poklon7) C++17
컴파일 오류
0 ms 0 KB
#include <bits/stdc++.h>

#define sz(x) int(x.size())

using namespace std;

#pragma GCC optimize("unroll-loops")
#pragma GCC optimize("-O3")
#pragma GCC optimize("Ofast")
#pragma GCC optimize("fast-math")
#pragma GCC optimize("no-stack-protector")
 
const int N = 1e6 + 10;
 
int n;
int L[N], R[N];
 
void convert(vector<char> &res, int x)
{
	while (x > 0)
    {
        if (x % 2) res.push_back('1');
        else res.push_back('0');
        x /= 2;
    }
    reverse(res.begin(), res.end());
}
 
vector<char> dfs(int v)
{
    vector<char> a, b;
	if (L[v] < 0) a = dfs(abs(L[v])); else convert(a, L[v]);
    if (R[v] < 0) b = dfs(abs(R[v])); else convert(b, R[v]);
    if (sz(a) < sz(b))
        swap(a, b);
    if (sz(a) != sz(rb
		{ a.push_back('0'); return a; }
    for (int i = 0; i < int(a.size()); i++)
    {
		if (a[i] == b[i])
			continue;
        if (b[i] == '1')
            swap(a, b);
        break;
    }
    a.push_back('0'); return a;
}
 
int main()
{
    cin >> n;
    for (int i = 1; i <= n; i++)
    {
		int l, r;
		cin >> l >> r;
        if (l < 0) L[i] = abs(l); else L[i] = -l;
        if (r < 0) R[i] = abs(r); else R[i] = -r;
	}
    vector<char> ans = dfs(1);
    for (auto x : ans)
        cout << x;
    return 0;
}

Compilation message

poklon.cpp:63: error: unterminated argument list invoking macro "sz"
   63 | }
      | 
poklon.cpp: In function 'std::vector<char> dfs(int)':
poklon.cpp:36:18: error: 'sz' was not declared in this scope
   36 |     if (sz(a) != sz(rb
      |                  ^~
poklon.cpp:36:20: error: expected ')' at end of input
   36 |     if (sz(a) != sz(rb
      |        ~         ~~^
      |                    )
poklon.cpp:36:18: error: expected statement at end of input
   36 |     if (sz(a) != sz(rb
      |                  ^~
poklon.cpp:36:5: warning: this 'if' clause does not guard... [-Wmisleading-indentation]
   36 |     if (sz(a) != sz(rb
      |     ^~
cc1plus: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the 'if'
poklon.cpp:36:18: error: expected '}' at end of input
   36 |     if (sz(a) != sz(rb
      |                  ^~
poklon.cpp:30:1: note: to match this '{'
   30 | {
      | ^
poklon.cpp:36:18: warning: no return statement in function returning non-void [-Wreturn-type]
   36 |     if (sz(a) != sz(rb
      |                  ^~