Online JudgeProblem SetAuthorsOnline ContestsUser
Web Board
Home Page
F.A.Qs
Statistical Charts
Problems
Submit Problem
Online Status
Prob.ID:
Register
Update your info
Authors ranklist
Current Contest
Past Contests
Scheduled Contests
Award Contest
User ID:
Password:
  Register

实在无法,求救,老是RUNTIME ERROR,帮帮我各位大神。代码如下

Posted by 508618087 at 2011-12-01 00:59:33 on Problem 1026
#include <iostream>
#include <cstring>
#define Maxsize 300
void Search(int i,int a[Maxsize],char ch,int k);
char c[Maxsize];
using namespace std;
int main()
{
	int n,a[Maxsize],k,i;
	char b[Maxsize];
	while(cin >> n, n != 0)
	{
		for(i=1;i<=n;i++)
			cin>>a[i];
		while(cin >> k, k != 0)
		{
			//memset(b,' ',sizeof(b));
			for(i=0;i<1000;i++)//初始化b
				b[i]=' ';
			gets(b);
			for(i=1;i<=n;i++)//每个位置操作
				Search(i,a,b[i],k);		
			for(i=1;i<=n;i++)//输出编码
				cout<<c[i];
			cout<<endl;
		}
		cout<<endl;
	}
	return 0;
}
void Search(int i,int a[Maxsize],char ch,int k)//判断循环次数并寻找正确位置
{
	int  d[Maxsize];
	int pos=0,first=a[i],j=1;	
	d[1]=a[i];
	do{
			d[++j]=a[d[j]];
			pos++;
	}while(d[j]!=first);//找到一周要循环几次
	if(k%pos)
		c[d[k%pos]]=ch;//存放编码位置
	else
		c[d[pos]]=ch;//存放编码位置

}

Followed by:

Post your reply here:
User ID:
Password:
Title:

Content:

Home Page   Go Back  To top


All Rights Reserved 2003-2013 Ying Fuchen,Xu Pengcheng,Xie Di
Any problem, Please Contact Administrator