#include <stdio.h>
 
#define SIZE 5
int queue[SIZE];
int head,tail;
 
void enqueue(int value){
	if(head==(tail+1)%SIZE){
	}else{
		queue[tail]=value;
		tail=(tail+1)%SIZE;
	}
}
 
int dequeue(){
	int value;
	if(head==tail){
		return 0;
	}else{
		value=queue[head++];
	}
	head=head%SIZE;
	return value;
}
int main(void) {
	dequeue();
	enqueue(1);
	enqueue(2);
	dequeue();
	enqueue(3);
	enqueue(4);
	enqueue(5);
	enqueue(6);
	dequeue();
	enqueue(7);
	for(int i=head;i!=tail;i=(i+1)%SIZE){
		printf("queue[%d]=%d\n",i
,queue
[i
]); 	}
	return 0;
}
 
				I2luY2x1ZGUgPHN0ZGlvLmg+CgojZGVmaW5lIFNJWkUgNQppbnQgcXVldWVbU0laRV07CmludCBoZWFkLHRhaWw7Cgp2b2lkIGVucXVldWUoaW50IHZhbHVlKXsKCWlmKGhlYWQ9PSh0YWlsKzEpJVNJWkUpewoJCXByaW50Zigi5rqA44K/44OzXG4iKTsKCX1lbHNlewoJCXF1ZXVlW3RhaWxdPXZhbHVlOwoJCXRhaWw9KHRhaWwrMSklU0laRTsKCX0KfQoKaW50IGRlcXVldWUoKXsKCWludCB2YWx1ZTsKCWlmKGhlYWQ9PXRhaWwpewoJCXByaW50Zigi56m6XG4iKTsKCQlyZXR1cm4gMDsKCX1lbHNlewoJCXZhbHVlPXF1ZXVlW2hlYWQrK107Cgl9CgloZWFkPWhlYWQlU0laRTsKCXJldHVybiB2YWx1ZTsKfQppbnQgbWFpbih2b2lkKSB7CglkZXF1ZXVlKCk7CgllbnF1ZXVlKDEpOwoJZW5xdWV1ZSgyKTsKCWRlcXVldWUoKTsKCWVucXVldWUoMyk7CgllbnF1ZXVlKDQpOwoJZW5xdWV1ZSg1KTsKCWVucXVldWUoNik7CglkZXF1ZXVlKCk7CgllbnF1ZXVlKDcpOwoJZm9yKGludCBpPWhlYWQ7aSE9dGFpbDtpPShpKzEpJVNJWkUpewoJCXByaW50ZigicXVldWVbJWRdPSVkXG4iLGkscXVldWVbaV0pOwoJfQoJcmV0dXJuIDA7Cn0K