Submission #1215865

#TimeUsernameProblemLanguageResultExecution timeMemory
1215865CELD_07Vision Program (IOI19_vision)C++20
Compilation error
0 ms0 KiB
#include "vision.h"
#pragma GCC optimize("O3")
#pragma GCC optimize("unroll-loops")
#include<bits/stdc++.h>
#include<ext/pb_ds/assoc_container.hpp>
typedef long long ll;
typedef long double ld;
#define endl "\n"
#define vll vector<ll>
#define sd second
#define ft first
#define all(x) x.begin(),x.end()
#define allr(x) x.rbegin(),x.rend()
#define pll pair<ll, ll>
#define mod 1000000007
#define _set tree<pll, null_type, less<pll>, rb_tree_tag, tree_order_statistics_node_update>
#define inf (ll)1e15
#define db(x) cout<<#x<<" : "<<x<<endl;
#define PRESICION(x) cout.setf(ios::fixed,ios::floatfield); cout.precision(x);
using namespace std;
using namespace __gnu_pbds;
ll dx[]={1, -1, 0, 0};
ll dy[]={0, 0, 1, -1};
inline ll sm(ll a, ll b){
return ((a%mod)+(b%mod))%mod;
}
inline ll ml(ll a, ll b){
return ((a%mod)*(b%mod))%mod;
}
inline ll rs(ll a, ll b){
return ((a%mod)-(b%mod)+mod)%mod;
}
ll bpow(ll a , ll b) {
if (b==0)return 1;
if (b%2!=0)return ((bpow(a, b-1)%mod)*(a%mod))%mod;
ll r=bpow (a ,b/ 2) ;
return ((r%mod)*(r%mod))%mod;
}
void construct_network(int H, int W, int K){
ll x, y, x1, y1;
vector<vector<ll>> ind(H+10, vector<ll>(W+10));
ll cnt=0;
vector<pair<ll, ll>> res;
for(int i=0; i<H; i++)for(int j=0; j<W; j++){ind[i][j]=cnt;cnt++;}
for(int i=0; i<H; i++){
for(int j=0; j<W; j++)
if(add_or({ind[i][j]})==1){
res.push_back({i, j});
}
}
if(abs(res[0].ft-res[1].ft)+abs(res[0].sd-res[1].sd)==K)add_or({ind[res[0].ft, res[0].sd]});
else add_not(ind[res[0].ft, res[0].sd]);
}

Compilation message (stderr)

vision.cpp: In function 'void construct_network(int, int, int)':
vision.cpp:47:10: warning: narrowing conversion of '(& ind.std::vector<std::vector<long long int> >::operator[](((std::vector<std::vector<long long int> >::size_type)i)))->std::vector<long long int>::operator[](((std::vector<long long int>::size_type)j))' from '__gnu_cxx::__alloc_traits<std::allocator<long long int>, long long int>::value_type' {aka 'long long int'} to 'int' [-Wnarrowing]
   47 | if(add_or({ind[i][j]})==1){
      |    ~~~~~~^~~~~~~~~~~~~
vision.cpp:47:10: warning: narrowing conversion of '(& ind.std::vector<std::vector<long long int> >::operator[](((std::vector<std::vector<long long int> >::size_type)i)))->std::vector<long long int>::operator[](((std::vector<long long int>::size_type)j))' from '__gnu_cxx::__alloc_traits<std::allocator<long long int>, long long int>::value_type' {aka 'long long int'} to 'int' [-Wnarrowing]
vision.cpp:51:78: warning: top-level comma expression in array subscript is deprecated [-Wcomma-subscript]
   51 | if(abs(res[0].ft-res[1].ft)+abs(res[0].sd-res[1].sd)==K)add_or({ind[res[0].ft, res[0].sd]});
      |                                                                              ^
vision.cpp:51:63: error: could not convert '{ind.std::vector<std::vector<long long int> >::operator[]((((void)res.std::vector<std::pair<long long int, long long int> >::operator[](0).std::pair<long long int, long long int>::first), ((std::vector<std::vector<long long int> >::size_type)res.std::vector<std::pair<long long int, long long int> >::operator[](0).std::pair<long long int, long long int>::second)))}' from '<brace-enclosed initializer list>' to 'std::vector<int>'
   51 | if(abs(res[0].ft-res[1].ft)+abs(res[0].sd-res[1].sd)==K)add_or({ind[res[0].ft, res[0].sd]});
      |                                                         ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      |                                                               |
      |                                                               <brace-enclosed initializer list>
vision.cpp:52:27: warning: top-level comma expression in array subscript is deprecated [-Wcomma-subscript]
   52 | else add_not(ind[res[0].ft, res[0].sd]);
      |                           ^
vision.cpp:52:13: error: cannot convert '__gnu_cxx::__alloc_traits<std::allocator<std::vector<long long int> >, std::vector<long long int> >::value_type' {aka 'std::vector<long long int>'} to 'int'
   52 | else add_not(ind[res[0].ft, res[0].sd]);
      |      ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
      |             |
      |             __gnu_cxx::__alloc_traits<std::allocator<std::vector<long long int> >, std::vector<long long int> >::value_type {aka std::vector<long long int>}
In file included from vision.cpp:1:
vision.h:16:17: note:   initializing argument 1 of 'int add_not(int)'
   16 | int add_not(int N);
      |             ~~~~^