Submission

Status:

-P-PP--P-P

Subtask/Task Score:

50/100

Score: 50

User: Weathery

Problemset: Internal Order

Language: cpp

Time: 0.002 second

Submitted On: 2026-10-08 19:32:39

#include <bits/stdc++.h>
using namespace std;

int main() {
	int fav,i,j,order[4];
	string god[4],s[4],k;
	cin >> fav;
	for (i=0;i<4;i++) {
		cin >> god[i];
		s[i]=god[i];
	}
	for (i = 1; i < 4; i++) {
        k = s[i];
        j = i - 1;
        while (j >= 0 && s[j].compare(k) > 0) {
            s[j + 1] = s[j];
            j--;
        }
        s[j+1] = k;
    }
	for (i=0;i<4;i++) {
	 for (j=0;j<4;j++){
	     if (god[i].compare(s[j])==0) {
         break;
	     }
	 }
		order[i]=j+1;
	 if (order[i] == fav) {
		    order[i] = 1;
		} else if (order[i] < fav) {
		    order[i]++;
		}
	}
	bool a=(order[1]==1||fav==1) && !(order[3]<order[2]),
	b=order[2]>order[1]&&order[2]<order[1]&&order[3]!=3,
	c=((a^b)&&order[0]>order[3]) || order[1]!=4;
  if (!c) {
      cout << "No Croissant :(";
	 }else if (order[3]<order[1]||order[2]>order[0]) {
	     cout <<"CROISSANT with ordering: ";
	       for (i=0;i<4;i++) cout <<order[i]<<' ';
	 } else {
	    cout << "No Croissant :(";
	}
	return 0;
}