Cod sursa(job #2029629)
Utilizator | Data | 30 septembrie 2017 12:16:06 | |
---|---|---|---|
Problema | Tablete | Scor | 0 |
Compilator | cpp | Status | done |
Runda | Arhiva de probleme | Marime | 1.86 kb |
#include <iostream>
#include <fstream>
using namespace std;
int main(){
int n, k, nr=0;
ifstream f("tablete.in");
ofstream g("tablete.out");
f>>n>>k;
int a[n][n];
for(int i=0; i<n; i++)
for(int j=0; j<n; j++)
a[i][j]=nr++;
nr=0;
if(n%2==1 && k%2==0)
for(int i=0; i<n; i++)
for(int j=0; j<n; j++){
if(i%2==1)
if(j==k-1){
int aux=a[i][0];
a[i][0]=a[i-1][0];
int c=0;
while(c<n-1){
a[i-1][c]=a[i-1][c+1];
c++;
}
a[i-1][n-1]=a[i][j];
c=k;
while(c>=0){
a[i][c]=a[i][c-1];
c--;
}
a[i][1]=aux;
}
}
nr=0;
if(n%2==0 && k%2==1)
for(int i=0; i<n; i++)
for(int j=0; j<n; j++){
if(i%2==1)
if(j==k-1){
int aux=a[i][0];
a[i][0]=a[i-1][0];
int c=0;
while(c<n-1){
a[i-1][c]=a[i-1][c+1];
c++;
}
c=n-1;
a[i-1][n-1]=a[i][n-1];
while(c>=0){
a[i][c]=a[i][c-1];
c--;
}
a[i][1]=aux;
}
}
for(int i=0; i<n; i++){
for(int j=0; j<n; j++)
g<<a[i][j]<<' ';
g<<'\n';
}
return 0;
}