Untitled

 avatar
unknown
plain_text
2 years ago
1.3 kB
3
Indexable
#include<iostream>
#define max 10000
using namespace std;

class queue

{
	int a[max];
	int front, rear;
public:
	queue();
	bool isempty();
	bool isfull();
	void enqueue(int invl);//chovao
	int dequeue();//layra
	int qeek();//


private:

};

queue::queue
()
{
	front=rear=-1;
}

bool queue::isempty()
{
	if(front==rear) return true;
	return false;
}

bool queue::isfull()
{
	if(rear==max-1) return true;
	return false;
}

void queue::enqueue(int invl)
{
	a[++rear]=invl;
}

int queue::dequeue()
{
	front++;
	return a[front];
}

int queue::qeek()
{
	return a[front+1];
}

int main()
{
	for(int tc=1;tc<11;tc++){
		int m,n; cin >>m>>n;
		int a[1000];
		for(int i=0;i<m;i++){
			cin>>a[i];
		}
		queue st;
		int front = -1,rear=-1;

		
			int l=m/2;int t;
			for(int i=0;i<l;i++){
				if(a[i*2]==n){
					t=2*i;
					st.enqueue(a[t]);
				}
			}
		while(front !=rear){
			st.dequeue();
			if(t%2==0){
				t=t+1;
				st.enqueue(a[t]);
			}
			if(t%2==1){
			for(int i=0;i<l;i++){
				if(a[2*i]==a[t]){
					a[t]=-1;
					t=2*i+1;
					st.enqueue(a[t]);
					
				}
				else{
					cout<<"#"<< tc<<" " << t<<endl;
					break;
				}
			}
			}
		}
	}
	return 0;
}
Editor is loading...