解题思路:
注意事项:
动态分配(或者直接定义一个足够大的全局数组)
交换两数下标相同时不交换,节约时间
参考代码:
#include <iostream>
using namespace std;
int main ()
{
int n,m;
cin>>n>>m;
double *p=new double [n+1];
for(int i=1;i<=n;i++)
cin>>*(p+i);
for(int i=0;i<m;i++)
{
int a,b;
cin>>a>>b;
if(a!=b){
double temp;
temp=*(p+a);
*(p+a)=*(p+b);
*(p+b)=temp;
}
}
for(int i=1;i<=n;i++)
cout<<*(p+i)<<endl;
return 0;
}
0.0分
0 人评分
校门外的树 (C++代码)浏览:907 |
采药 (C++代码)浏览:1331 |
逆反的01串 (C++代码)(依旧推荐switch)浏览:1003 |
三进制小数 (C++代码)(第11位大于1.5才能进位)浏览:1203 |
C语言训练-求函数值 (C语言代码)浏览:944 |
汽水瓶 (C语言代码)浏览:664 |
C语言程序设计教程(第三版)课后习题11.3 (C语言代码)浏览:1071 |
Pascal三角 (C语言代码)格式错误浏览:550 |
C语言程序设计教程(第三版)课后习题8.3 (C语言代码)浏览:790 |
C语言程序设计教程(第三版)课后习题1.5 (C语言代码)浏览:583 |