Submission #1344371

#TimeUsernameProblemLanguageResultExecution timeMemory
1344371Faisal_SaqibVision Program (IOI19_vision)C++17
Compilation error
0 ms0 KiB
#include "vision.h"
#include <bits/stdc++.h>
using namespace std;
void construct_network(int h,int w,int k)
{
	vector<int> dig1,dig2;
	map<int,vector<int>> sm,sb;
	for(int i=0;i<h;i++)
	{
		for(int j=0;j<w;j++)
		{
			sm[i+j].push_back(i*w+j);
			sm[i-j].push_back(i*w+j);
		}
	}
	for(auto tt:sm)
	{
		dig1.push_back(add_xor(tt.second));
	}
	for(auto tt:sb)
	{
		dig2.push_back(add_xor(tt.second));
	}
	vector<int> o1=dig1,o2=dig2;
	for(int i=dig1.size()-2;i>=0;i--)
		dig1[i]=add_or({dig1[i],dig1[i+1]});
	for(int i=dig2.size()-2;i>=0;i--)
		dig2[i]=add_or({dig2[i],dig2[i+1]});
	int gk=0;
	for(int i=0;i<dig1.size();i++)
	{
		if(i+k<dig1.size())
		{
			if(!gk)gk=add_and(o1[i],dig1[i+k]);
			else gk=add_or({add_and(o1[i],dig1[i+k]),gk});
		}
	}
	for(int i=0;i<dig2.size();i++)
	{
		if(i+k<dig2.size())
		{
			if(!gk)gk=add_and(o2[i],dig1[i+k]);
			else gk=add_or({add_and(o2[i],dig1[i+k]),gk});
		}
	}
	k--;
	int gkmo=0;
	for(int i=0;i<dig1.size();i++)
	{
		if(i+k<dig1.size())
		{
			if(!gkmo)gkmo=add_and(o1[i],dig1[i+k]);
			else gkmo=add_or({add_and(o1[i],dig1[i+k]),gkmo});
		}
	}
	for(int i=0;i<dig2.size();i++)
	{
		if(i+k<dig2.size())
		{
			if(!gkmo)gkmo=add_and(o2[i],dig1[i+k]);
			else gkmo=add_or({add_and(o2[i],dig1[i+k]),gkmo});
		}
	}
	add_and({gkmo,add_not(gk)});
	return;	
}

Compilation message (stderr)

vision.cpp: In function 'void construct_network(int, int, int)':
vision.cpp:34:42: error: could not convert 'o1.std::vector<int>::operator[](((std::vector<int>::size_type)i))' from '__gnu_cxx::__alloc_traits<std::allocator<int>, int>::value_type' {aka 'int'} to 'std::vector<int>'
   34 |                         if(!gk)gk=add_and(o1[i],dig1[i+k]);
      |                                   ~~~~~~~^~~~~~~~~~~~~~~~~
      |                                          |
      |                                          __gnu_cxx::__alloc_traits<std::allocator<int>, int>::value_type {aka int}
vision.cpp:35:48: error: could not convert 'o1.std::vector<int>::operator[](((std::vector<int>::size_type)i))' from '__gnu_cxx::__alloc_traits<std::allocator<int>, int>::value_type' {aka 'int'} to 'std::vector<int>'
   35 |                         else gk=add_or({add_and(o1[i],dig1[i+k]),gk});
      |                                         ~~~~~~~^~~~~~~~~~~~~~~~~
      |                                                |
      |                                                __gnu_cxx::__alloc_traits<std::allocator<int>, int>::value_type {aka int}
vision.cpp:35:39: error: could not convert '{<expression error>, gk}' from '<brace-enclosed initializer list>' to 'std::vector<int>'
   35 |                         else gk=add_or({add_and(o1[i],dig1[i+k]),gk});
      |                                 ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      |                                       |
      |                                       <brace-enclosed initializer list>
vision.cpp:42:42: error: could not convert 'o2.std::vector<int>::operator[](((std::vector<int>::size_type)i))' from '__gnu_cxx::__alloc_traits<std::allocator<int>, int>::value_type' {aka 'int'} to 'std::vector<int>'
   42 |                         if(!gk)gk=add_and(o2[i],dig1[i+k]);
      |                                   ~~~~~~~^~~~~~~~~~~~~~~~~
      |                                          |
      |                                          __gnu_cxx::__alloc_traits<std::allocator<int>, int>::value_type {aka int}
vision.cpp:43:48: error: could not convert 'o2.std::vector<int>::operator[](((std::vector<int>::size_type)i))' from '__gnu_cxx::__alloc_traits<std::allocator<int>, int>::value_type' {aka 'int'} to 'std::vector<int>'
   43 |                         else gk=add_or({add_and(o2[i],dig1[i+k]),gk});
      |                                         ~~~~~~~^~~~~~~~~~~~~~~~~
      |                                                |
      |                                                __gnu_cxx::__alloc_traits<std::allocator<int>, int>::value_type {aka int}
vision.cpp:43:39: error: could not convert '{<expression error>, gk}' from '<brace-enclosed initializer list>' to 'std::vector<int>'
   43 |                         else gk=add_or({add_and(o2[i],dig1[i+k]),gk});
      |                                 ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      |                                       |
      |                                       <brace-enclosed initializer list>
vision.cpp:52:46: error: could not convert 'o1.std::vector<int>::operator[](((std::vector<int>::size_type)i))' from '__gnu_cxx::__alloc_traits<std::allocator<int>, int>::value_type' {aka 'int'} to 'std::vector<int>'
   52 |                         if(!gkmo)gkmo=add_and(o1[i],dig1[i+k]);
      |                                       ~~~~~~~^~~~~~~~~~~~~~~~~
      |                                              |
      |                                              __gnu_cxx::__alloc_traits<std::allocator<int>, int>::value_type {aka int}
vision.cpp:53:50: error: could not convert 'o1.std::vector<int>::operator[](((std::vector<int>::size_type)i))' from '__gnu_cxx::__alloc_traits<std::allocator<int>, int>::value_type' {aka 'int'} to 'std::vector<int>'
   53 |                         else gkmo=add_or({add_and(o1[i],dig1[i+k]),gkmo});
      |                                           ~~~~~~~^~~~~~~~~~~~~~~~~
      |                                                  |
      |                                                  __gnu_cxx::__alloc_traits<std::allocator<int>, int>::value_type {aka int}
vision.cpp:53:41: error: could not convert '{<expression error>, gkmo}' from '<brace-enclosed initializer list>' to 'std::vector<int>'
   53 |                         else gkmo=add_or({add_and(o1[i],dig1[i+k]),gkmo});
      |                                   ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      |                                         |
      |                                         <brace-enclosed initializer list>
vision.cpp:60:46: error: could not convert 'o2.std::vector<int>::operator[](((std::vector<int>::size_type)i))' from '__gnu_cxx::__alloc_traits<std::allocator<int>, int>::value_type' {aka 'int'} to 'std::vector<int>'
   60 |                         if(!gkmo)gkmo=add_and(o2[i],dig1[i+k]);
      |                                       ~~~~~~~^~~~~~~~~~~~~~~~~
      |                                              |
      |                                              __gnu_cxx::__alloc_traits<std::allocator<int>, int>::value_type {aka int}
vision.cpp:61:50: error: could not convert 'o2.std::vector<int>::operator[](((std::vector<int>::size_type)i))' from '__gnu_cxx::__alloc_traits<std::allocator<int>, int>::value_type' {aka 'int'} to 'std::vector<int>'
   61 |                         else gkmo=add_or({add_and(o2[i],dig1[i+k]),gkmo});
      |                                           ~~~~~~~^~~~~~~~~~~~~~~~~
      |                                                  |
      |                                                  __gnu_cxx::__alloc_traits<std::allocator<int>, int>::value_type {aka int}
vision.cpp:61:41: error: could not convert '{<expression error>, gkmo}' from '<brace-enclosed initializer list>' to 'std::vector<int>'
   61 |                         else gkmo=add_or({add_and(o2[i],dig1[i+k]),gkmo});
      |                                   ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      |                                         |
      |                                         <brace-enclosed initializer list>