제출 #1184631

#제출 시각아이디문제언어결과실행 시간메모리
1184631droopy친구 (IOI14_friend)C++20
컴파일 에러
0 ms0 KiB
// Jesu juva

#include <bits/stdc++.h>
#include "friend.h"
using namespace std;

#define ll long long
#define ull unsigned ll
#define pii pair<int,int>
#define pll pair<ll,ll>
#define vi vector<int>
#define vll vector<ll>
#define vull vector<ull>
#define vb vector<bool>
#define vpii vector<pii>
#define vpll vector<pll>
#define vvi vector<vi>
#define vvb vector<vb>
#define vvpii vector<vpii>
#define f(i,x,n) for(int i=x;i<n;i++)
#define fe(i,x,n) for (int i=x;i<=n;i++)
#define fr(i,x,n) for (int i=x;i>n;i--)
#define fre(i,x,n) for(int i=x;i>=n;i--)
#define fll(i,x,n) for (ll i=x;i<n;i++)

ll findSample(int n, int confidence[], int host[], int protocol[]) {
    ll select[n], dont[n];

    f(i,0,n) {
        select[i] = confidence[i];
        dont[i] = 0;    
    }

    fre(i,n-1,1) {
        int u = host[i];
        int v = i;

        if(protocol[i] == 0) { // host
            select[u] = select[u] + dont[v];
            dont[u] = max(dont[u] + dont[v], dont[u] + select[v]);
        }
        else if(protocol[i] == 1) { // friends of host BUT NOT HOST
            select[u] = max({select[u] + select[v], select[u] + dont[v], dont[u] + select[v]});
            dont[u] = dont[u] + dont[v];
        }
        else if(protocol[i] == 2) { // friend of host AND host
            select[u] = max(select[u] + dont[v], dont[u] + select[v]);
            dont[u] = dont[u] + dont[v];
        }
    }
    return max(select[0], dont[0]);
}

/*int main() {
    ios::sync_with_stdio(false);
    cin.tie(0);
    /*
    int t;cin>>t;
    while(t--){

    }
    */
    
    int n;
    cin >> n;

    int conf[n], host[n], prot[n];
    f(i,0,n) {
        cin >> conf[i];
    }
    f(i,1,n) {
        cin >> host[i] >> prot[i];
    }
    cout << findSample(n,conf,host,prot) << endl;
}*/

// soli Deo gloria

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

friend.cpp:26:4: error: ambiguating new declaration of 'long long int findSample(int, int*, int*, int*)'
   26 | ll findSample(int n, int confidence[], int host[], int protocol[]) {
      |    ^~~~~~~~~~
In file included from friend.cpp:4:
friend.h:7:5: note: old declaration 'int findSample(int, int*, int*, int*)'
    7 | int findSample(int n,int confidence[],int host[],int protocol[]);
      |     ^~~~~~~~~~
friend.cpp:65:5: error: 'cin' does not name a type
   65 |     cin >> n;
      |     ^~~
friend.cpp:67:14: error: size of array 'conf' is not an integral constant-expression
   67 |     int conf[n], host[n], prot[n];
      |              ^
friend.cpp:67:23: error: size of array 'host' is not an integral constant-expression
   67 |     int conf[n], host[n], prot[n];
      |                       ^
friend.cpp:67:32: error: size of array 'prot' is not an integral constant-expression
   67 |     int conf[n], host[n], prot[n];
      |                                ^
friend.cpp:20:18: error: expected unqualified-id before 'for'
   20 | #define f(i,x,n) for(int i=x;i<n;i++)
      |                  ^~~
friend.cpp:68:5: note: in expansion of macro 'f'
   68 |     f(i,0,n) {
      |     ^
friend.cpp:68:7: error: 'i' does not name a type; did you mean 'vi'?
   68 |     f(i,0,n) {
      |       ^
friend.cpp:20:30: note: in definition of macro 'f'
   20 | #define f(i,x,n) for(int i=x;i<n;i++)
      |                              ^
friend.cpp:68:7: error: 'i' does not name a type; did you mean 'vi'?
   68 |     f(i,0,n) {
      |       ^
friend.cpp:20:34: note: in definition of macro 'f'
   20 | #define f(i,x,n) for(int i=x;i<n;i++)
      |                                  ^
friend.cpp:20:18: error: expected unqualified-id before 'for'
   20 | #define f(i,x,n) for(int i=x;i<n;i++)
      |                  ^~~
friend.cpp:71:5: note: in expansion of macro 'f'
   71 |     f(i,1,n) {
      |     ^
friend.cpp:71:7: error: 'i' does not name a type; did you mean 'vi'?
   71 |     f(i,1,n) {
      |       ^
friend.cpp:20:30: note: in definition of macro 'f'
   20 | #define f(i,x,n) for(int i=x;i<n;i++)
      |                              ^
friend.cpp:71:7: error: 'i' does not name a type; did you mean 'vi'?
   71 |     f(i,1,n) {
      |       ^
friend.cpp:20:34: note: in definition of macro 'f'
   20 | #define f(i,x,n) for(int i=x;i<n;i++)
      |                                  ^
friend.cpp:74:5: error: 'cout' does not name a type
   74 |     cout << findSample(n,conf,host,prot) << endl;
      |     ^~~~
friend.cpp:75:1: error: expected declaration before '}' token
   75 | }*/
      | ^
friend.cpp:75:3: error: expected unqualified-id before '/' token
   75 | }*/
      |   ^