제출 #657595

#제출 시각아이디문제언어결과실행 시간메모리
657595TimDeeA Difficult(y) Choice (BOI21_books)C++17
컴파일 에러
0 ms0 KiB
#include"books.h"
#include <bits/stdc++.h>
using namespace std;
#define int long long
void solve(int n, int k, int A, int s) {
	if (s!=n) return;
	vector<int> a(n);
	for (int i=0; i<n; ++i) a[i]=skim(i+1);
	if (k==3) {

		for (int i=0; i<n; ++i) {
			for (int j=i+1; j<n; ++j) {
				int l=j+1, r=n;
				while (l<r) {
					int mid=(l+r)>>1;
					if (a[i]+a[j]+a[mid]<A) l=mid+1;
					else r=mid;
				}
				if (a[i]+a[j]+a[r]<=2*A) {
					answer({i+1,j+1,r+1});
					return;
				}
			}
		}
		impossible();

	}
}

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

books.cpp: In function 'void solve(long long int, long long int, long long int, long long int)':
books.cpp:20:15: warning: narrowing conversion of '(i + 1)' from 'long long int' to 'int' [-Wnarrowing]
   20 |      answer({i+1,j+1,r+1});
      |              ~^~
books.cpp:20:15: warning: narrowing conversion of '(i + 1)' from 'long long int' to 'int' [-Wnarrowing]
books.cpp:20:19: warning: narrowing conversion of '(j + 1)' from 'long long int' to 'int' [-Wnarrowing]
   20 |      answer({i+1,j+1,r+1});
      |                  ~^~
books.cpp:20:19: warning: narrowing conversion of '(j + 1)' from 'long long int' to 'int' [-Wnarrowing]
books.cpp:20:23: warning: narrowing conversion of '(r + 1)' from 'long long int' to 'int' [-Wnarrowing]
   20 |      answer({i+1,j+1,r+1});
      |                      ~^~
books.cpp:20:23: warning: narrowing conversion of '(r + 1)' from 'long long int' to 'int' [-Wnarrowing]
/usr/bin/ld: /tmp/ccoTbl0U.o: in function `main':
grader.cpp:(.text.startup+0x83): undefined reference to `solve(int, int, long long, int)'
collect2: error: ld returned 1 exit status