Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <bits/stdc++.h>
- using namespace std;
- ifstream fin("cruce.in");
- ofstream fout("cruce.out");
- int findSeq(int v[], int k, int n)
- {
- int sum = 0;
- for(int i=0;i<k;i++)sum+=v[i];
- int index = 0, maximum = sum;
- int last = n-k+1;
- for(int i=1;i<last;i++)
- {
- sum -= v[i-1];
- sum += v[i+k-1];
- if(sum>maximum)
- {
- maximum = sum;
- index = i;
- }
- }
- return index;
- }
- int findSeqComplex(int v[], int v2[],int k, int n)
- {
- int vx[n];
- for(int i=0;i<n;i++)
- vx[i] = v[i]-v2[i];
- return findSeq(vx, k, n);
- }
- class Cruce
- {
- public:
- cruce(){}
- int k,n;
- int verticalIndex;
- int horizontalIndex;
- int currentVerticalSum = 0;
- int currentHorizontalSum = 0;
- int maxVerticalSum;
- int maxHorizontalSum;
- int maxSum = 0;
- int* horizontal;
- int* vertical;
- int** v;
- void setup(int n, int k)
- {
- this->n = n;
- this->k = k;
- horizontal = new int[n];
- vertical = new int[n];
- v = new int*[n];
- }
- void tryVertical()
- {
- start();
- loop();
- }
- void start()
- {
- for(int i=0;i<k;i++)
- currentVerticalSum+=vertical[i];
- maxVerticalSum
- }
- void loop()
- {
- }
- int calcSquareSum(int iX, int iY, int k)
- {
- int s = 0;
- int fX = iX+k;
- int fY = iY+k;
- for(int i=iX;i<fX;i++)
- for(int j=iY;j<fY;j++)
- s += v[i][j];
- return s;
- }
- };
- int main()
- {
- int n, k;
- fin>>n>>k;
- Cruce cruce;
- cruce.setup(n, k);
- for(int i=0;i<n;i++)
- {
- cruce.v[i] = new int[n];
- for(int j=0;j<n;j++)
- {
- int x;
- fin>>x;
- cruce.v[i][j] = x;
- cruce.horizontal[i] += x;
- cruce.vertical[j] += x;
- }
- }
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement