結果
問題 | No.750 Frac #1 |
ユーザー |
|
提出日時 | 2019-07-11 23:17:18 |
言語 | C (gcc 13.3.0) |
結果 |
AC
|
実行時間 | 1 ms / 1,000 ms |
コード長 | 1,227 bytes |
コンパイル時間 | 835 ms |
コンパイル使用メモリ | 29,568 KB |
実行使用メモリ | 5,248 KB |
最終ジャッジ日時 | 2024-11-08 19:23:46 |
合計ジャッジ時間 | 1,711 ms |
ジャッジサーバーID (参考情報) |
judge5 / judge1 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 30 |
ソースコード
/* * yukicoder Frac * 2019.07.11 Kamato02 */ #include<stdio.h> typedef struct { float nume; /* 分子 */ float deno; /* 分母 */ float value; /* 実数値 */ } fraction; int main() { int N; /* 入力される値の数 */ int i,j; int wether_do; /* 交換するかどうか */ int n_swap, d_swap; float f_swap; fraction data[20]; scanf("%d", &N); for(i = 0;i < N;i++) { scanf("%f %f", &data[i].nume, &data[i].deno); data[i].value = data[i].nume / data[i].deno; } if(N == 1) { printf("%d %d\n", (int)(data[0].nume), (int)(data[0].deno)); return (0); } /* * 以下バブルソート */ for(i = 0;i < N - 1;) { wether_do = 1; for(j = N - 1;j > i;j--) { if(data[j].value > data[j - 1].value) { n_swap = data[j].nume; d_swap = data[j].deno; f_swap = data[j].value; data[j].nume = data[j - 1].nume; data[j].deno = data[j - 1].deno; data[j].value = data[j - 1].value; data[j - 1].nume = n_swap; data[j - 1].deno = d_swap; data[j - 1].value = f_swap; wether_do = 0; } } if(wether_do == 1) { i = N; } else { i++; } } for(i = 0;i < N;i++) { printf("%d %d\n", (int)(data[i].nume), (int)(data[i].deno)); } return (0); }