c++程序问题
如题,以下有一段程序(我同学写的orz),貌似出现了一点问题,希望各位大神帮忙解决
(原题目:https://www.luogu.org/problem/show?pid=1966)
#include<cstdio>
#include<algorithm>
using namespace std;
struct s{
long shu;
long hao;
}a[100050],b[100050];
void jh(long *a,long *b)
{
*a+=*b;
*b=*a-*b;
*a-=*b;
}
int px(const s & a,const s & b)
{
return (a.shu<b.shu);
}
int ph(const s & a,const s & b)
{
return (a.hao<b.hao);
}
int main()
{
long n;
long num=0;
long i;
scanf("%ld",&n);
for(i=0;i<n;i++)
{
scanf("%ld",&a[i].shu);
a[i].hao=i;
//printf("@%d\n",i);
}
//printf("a完\n");
i=0;
for(i=0;i<n;i++);
{
//printf("%d#@%\n",i);
scanf("%ld",&b[i].shu);
b[i].hao=i;
//printf("@%d\n",i);
}
//printf("b完\n");
sort(a,a+n-1,px);
sort(b,b+n-1,px);
for(i=0;i<n;i++)
a[i].shu=b[i].hao;
sort(a,a+n-1,ph);
for(i=0;i<n;i++)
{
//printf("%d %d\n",a[i].hao,a[i].shu);
if(a[i].hao<a[i].shu)
{
num+=a[i].hao-a[i].shu;
}
}
printf("%ld",num%99999997);
return 0;
}(原题目:https://www.luogu.org/problem/show?pid=1966)
...全文
相关推荐
c++棋盘覆盖问题源程序
棋盘覆盖问题的源程序文件,.cpp文件,轻松实现棋盘覆盖!
贪心算法解决程序存储于磁带问题源代码c++实现
分别输入程序个数和长度,计算最多可存储的程序数目。很简单的贪心算法实现,时间复杂度较高,非常有效。
迷宫问题演示程序C++语言
迷宫问题演示程序 以一个n*n的方阵表示迷宫,0和1分别表示迷宫中的通路和障碍。迷宫问题要求求出从入口(1,1)到出口(n,n)的所有通路,或得出没有通路的结论。 具体要求是:程序启动后显示一张迷宫图板,用白色的方格表示通路,黑色的方格表示障碍。用户可以通过点击的方式改变迷宫图板上通路,设置新的迷宫状态图,然后可以由用户按“开始执行”按钮,即可在迷宫图板上显示从入口(1,1)到出口(n,n)的所有通路。
Josephus问题c++程序
Josephus问题的解答,分别使用不同的方法
迷宫问题c++源程序
用c++写的有关迷宫问题的算法,源程序,希望对大家有用!


其它技术问题
