답안 #1104012

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
1104012 2024-10-22T14:56:13 Z vjudge1 Rack (eJOI19_rack) C++17
컴파일 오류
0 ms 0 KB
#include <algorithm>
#include <iostream>
#include <bits/stdc++.h>
#include <cmath>
#include <vector>

#define int long long

using namespace std;
const long long mod = 1e9+7;

int binary_exponentiation(int number, int exponent)
{
    int result = 1;
    while (exponent > 0) {

        if(exponent & 1) result = result * number;

        number = number * number;
        exponent >>= 1;
        number%=mod;
        exponent%=mod;
    }

    return result;
}


int make_path(long long seed, int length) 
{
    long long path = 0;
    for (int i = 0; i < min(length, 62); i++) {
        if (((seed >> i) & 1) == 1) path = (path + binary_exponentiation(2, length - i - 1))%mod;
    }
    return path;
}

int main()
{
    ios_base::sync_with_stdio(false);
    cin.tie(NULL);

    long long int height, node;
    cin >> height >> node;
    cout << (make_path(node - 1, height) + 1)%mod << endl;
    return 0;
}

Compilation message

rack.cpp: In function 'long long int make_path(long long int, long long int)':
rack.cpp:32:39: error: no matching function for call to 'min(long long int&, int)'
   32 |     for (int i = 0; i < min(length, 62); i++) {
      |                                       ^
In file included from /usr/include/c++/10/algorithm:61,
                 from rack.cpp:1:
/usr/include/c++/10/bits/stl_algobase.h:230:5: note: candidate: 'template<class _Tp> constexpr const _Tp& std::min(const _Tp&, const _Tp&)'
  230 |     min(const _Tp& __a, const _Tp& __b)
      |     ^~~
/usr/include/c++/10/bits/stl_algobase.h:230:5: note:   template argument deduction/substitution failed:
rack.cpp:32:39: note:   deduced conflicting types for parameter 'const _Tp' ('long long int' and 'int')
   32 |     for (int i = 0; i < min(length, 62); i++) {
      |                                       ^
In file included from /usr/include/c++/10/algorithm:61,
                 from rack.cpp:1:
/usr/include/c++/10/bits/stl_algobase.h:278:5: note: candidate: 'template<class _Tp, class _Compare> constexpr const _Tp& std::min(const _Tp&, const _Tp&, _Compare)'
  278 |     min(const _Tp& __a, const _Tp& __b, _Compare __comp)
      |     ^~~
/usr/include/c++/10/bits/stl_algobase.h:278:5: note:   template argument deduction/substitution failed:
rack.cpp:32:39: note:   deduced conflicting types for parameter 'const _Tp' ('long long int' and 'int')
   32 |     for (int i = 0; i < min(length, 62); i++) {
      |                                       ^
In file included from /usr/include/c++/10/algorithm:62,
                 from rack.cpp:1:
/usr/include/c++/10/bits/stl_algo.h:3468:5: note: candidate: 'template<class _Tp> constexpr _Tp std::min(std::initializer_list<_Tp>)'
 3468 |     min(initializer_list<_Tp> __l)
      |     ^~~
/usr/include/c++/10/bits/stl_algo.h:3468:5: note:   template argument deduction/substitution failed:
rack.cpp:32:39: note:   mismatched types 'std::initializer_list<_Tp>' and 'long long int'
   32 |     for (int i = 0; i < min(length, 62); i++) {
      |                                       ^
In file included from /usr/include/c++/10/algorithm:62,
                 from rack.cpp:1:
/usr/include/c++/10/bits/stl_algo.h:3474:5: note: candidate: 'template<class _Tp, class _Compare> constexpr _Tp std::min(std::initializer_list<_Tp>, _Compare)'
 3474 |     min(initializer_list<_Tp> __l, _Compare __comp)
      |     ^~~
/usr/include/c++/10/bits/stl_algo.h:3474:5: note:   template argument deduction/substitution failed:
rack.cpp:32:39: note:   mismatched types 'std::initializer_list<_Tp>' and 'long long int'
   32 |     for (int i = 0; i < min(length, 62); i++) {
      |                                       ^
At global scope:
cc1plus: error: '::main' must return 'int'
rack.cpp: In function 'int main()':
rack.cpp:7:13: error: 'long long long' is too long for GCC
    7 | #define int long long
      |             ^~~~
rack.cpp:43:15: note: in expansion of macro 'int'
   43 |     long long int height, node;
      |               ^~~
rack.cpp:7:18: error: 'long long long' is too long for GCC
    7 | #define int long long
      |                  ^~~~
rack.cpp:43:15: note: in expansion of macro 'int'
   43 |     long long int height, node;
      |               ^~~