結果
| 問題 | No.8042 本棚 | 
| コンテスト | |
| ユーザー |  Goi_dude | 
| 提出日時 | 2019-04-01 22:11:24 | 
| 言語 | C (gcc 13.3.0) | 
| 結果 | 
                                AC
                                 
                             | 
| 実行時間 | 1 ms / 2,000 ms | 
| コード長 | 1,056 bytes | 
| コンパイル時間 | 245 ms | 
| コンパイル使用メモリ | 30,336 KB | 
| 実行使用メモリ | 5,376 KB | 
| 最終ジャッジ日時 | 2024-06-28 01:50:51 | 
| 合計ジャッジ時間 | 946 ms | 
| ジャッジサーバーID (参考情報) | judge5 / judge2 | 
(要ログイン)
| ファイルパターン | 結果 | 
|---|---|
| sample | AC * 3 | 
| other | AC * 24 | 
ソースコード
#include <stdio.h>
#include <string.h>
int main(void){
	int N;
	int i,j;
	char S[50][26];
	char d[50][4];
	int dn[50];
	char tmp[50];
	scanf("%d",&N);
	for(i=0;i<N;i++){
		scanf("%s %s",S[i],d[i]);
		if (strcmp(d[i],"iti")==0){
			dn[i]=1;
		}
		if (strcmp(d[i],"ni")==0){
			dn[i]=2;
		}
		if (strcmp(d[i],"san")==0){
			dn[i]=3;
		}
		if (strcmp(d[i],"yon")==0){
			dn[i]=4;
		}
	}
	int temp;
	for(i=0;i<N;i++){
		for(j=0;j+1<N;j++){
			if(strcmp(S[j],S[j+1])>0){
				strcpy(tmp, S[j]);
				strcpy(S[j], S[j+1]);
				strcpy(S[j+1], tmp);
				strcpy(tmp, d[j]);
				strcpy(d[j], d[j+1]);
				strcpy(d[j+1], tmp);
				temp = dn[j];
				dn[j]= dn[j+1];
				dn[j+1]=temp;
			}
		}
	}
	for(i=0;i<N;i++){
		for(j=0;j+1<N;j++){
			if(dn[j]-dn[j+1] >0 && strcmp(S[j],S[j+1])==0){
				strcpy(tmp, S[j]);
				strcpy(S[j], S[j+1]);
				strcpy(S[j+1], tmp);
				strcpy(tmp, d[j]);
				strcpy(d[j], d[j+1]);
				strcpy(d[j+1], tmp);
				temp = dn[j];
				dn[j]= dn[j+1];
				dn[j+1]=temp;
			}
		}
	}
	for(i=0;i<N;i++){
		printf("%s %s\n",S[i],d[i]);
	}
	return 0;
}
            
            
            
        