作者:yunjinqi 类别:
日期:2023-05-31 18:24:49
阅读:466 次 消耗积分:0 分
#include <stdio.h>
int main(){
int n,k,x;
int arr[100][100];
int v,f=1,sum;
if (scanf("%d %d %d",&n,&k,&x)!=EOF){
// 读取数据
for (int i=0;i<n;i++){
for (int j=0;j<n;j++){
if (scanf("%d",&v)!=EOF){
arr[i][j] = v;
}
}
}
// 最开始的数据
// printf("-------开始数据-----------\n");
// for (int i=0;i<n;i++){
// for (int j=0;j<n;j++){
// printf("%d ",arr[i][j]);
// }
// printf("\n");
// }
// 转换数据
// int count = 0;
// for (int j=0;j<n;j++){
// // 偶数列转换
// if (j%2==1){
// count++;
// int s = k-count%k;
// // printf("%d %d\n",j,s);
// for (int i=n-1;i>=s;i--){
// arr[i][j] = arr[i-s][j];
// }
// for (int i=0;i<s;i++){
// arr[i][j] =x;
// }
// }
// }
for(int j=1;j<n;j+=2)
{
for(int i=n-1;i>=f;i--)
{
arr[i][j] = arr[i-f][j];
}
for(int i=0;i<f;i++)
{
arr[i][j] = x;
}
f = f%k+1;
}
// 输出运算好之后的数据
// printf("-------转换后数据-----------\n");
// for (int i=0;i<n;i++){
// for (int j=0;j<n;j++){
// printf("%d ",arr[i][j]);
// }
// printf("\n");
// }
// 求和
for (int i=0;i<n;i++){
sum=0;
for (int j=0;j<n;j++){
sum+=arr[i][j];
}
printf("%d",sum);
if (i!=n-1){printf(" ");}
}
}
return 0;
}