Run ID | 作者 | 问题 | 语言 | 测评结果 | 分数 | 时间 | 内存 | 代码长度 | 提交时间 |
---|---|---|---|---|---|---|---|---|---|
110990 | I am BM | K 次取反后最大化的数组和 | C++ | 通过 | 100 | 0 MS | 244 KB | 703 | 2023-11-18 08:53:12 |
#include<bits/stdc++.h> using namespace std; int main() { int i,j,tmp,absle,last=0; bool ud=0; cin>>i>>j; int n[i+1],un[i+1]; for (int q=1;q<=i;q++) { cin>>n[q]; un[q]=n[q]; } for (int q=1;q<=j;q++) { for (int z=i;z>1;z--)//maopao { for (int s=1;s<z;s++) { if (un[s]>=un[s+1]) { un[s]=un[s]; un[s+1]=un[s+1]; } else { tmp=un[s+1]; un[s+1]=un[s]; un[s]=tmp; } } } for (int z=1;z<=i;z++) { if (un[z]<0) ud=1; } if (ud==0) { un[i]=un[i]*(-1); } if (ud==1) { un[i]=un[i]*(-1); } } for (int z=1;z<=i;z++) { last+=un[z]; } cout<<last; return 0; }