結果
問題 | No.133 カードゲーム |
ユーザー | くれちー |
提出日時 | 2016-11-19 23:42:51 |
言語 | C90 (gcc 12.3.0) |
結果 |
AC
|
実行時間 | 11 ms / 5,000 ms |
コード長 | 749 bytes |
コンパイル時間 | 331 ms |
コンパイル使用メモリ | 23,040 KB |
実行使用メモリ | 5,376 KB |
最終ジャッジ日時 | 2024-06-25 03:44:53 |
合計ジャッジ時間 | 1,457 ms |
ジャッジサーバーID (参考情報) |
judge1 / judge4 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 4 |
other | AC * 19 |
コンパイルメッセージ
main.c: In function ‘main’: main.c:22:9: warning: ignoring return value of ‘scanf’ declared with attribute ‘warn_unused_result’ [-Wunused-result] 22 | scanf("%d", &n); | ^~~~~~~~~~~~~~~ main.c:26:33: warning: ignoring return value of ‘scanf’ declared with attribute ‘warn_unused_result’ [-Wunused-result] 26 | for (i = 0; i < n; i++) scanf("%d", &a[i]); | ^~~~~~~~~~~~~~~~~~ main.c:27:33: warning: ignoring return value of ‘scanf’ declared with attribute ‘warn_unused_result’ [-Wunused-result] 27 | for (i = 0; i < n; i++) scanf("%d", &b[i]); | ^~~~~~~~~~~~~~~~~~
ソースコード
#include <stdio.h> #include <stdlib.h> int getrand(int min, int max) { return min + (int)(rand() * (max - min + 1.0) / (1.0 + RAND_MAX)); } void swap(int *a, int *b) { int tmp = *a; *a = *b; *b = tmp; } void shuffle(int *d, int size) { int tmp1 = getrand(0, size - 1); int tmp2 = getrand(0, size - 1); swap(&d[tmp1], &d[tmp2]); } int main() { int n; scanf("%d", &n); int a[4], b[4]; int i, j; for (i = 0; i < n; i++) scanf("%d", &a[i]); for (i = 0; i < n; i++) scanf("%d", &b[i]); int cnta = 0, num = 114514; for (i = 0; i < num; i++) { shuffle(a, n); shuffle(b, n); int cnt = 0; for (j = 0; j < n; j++) { if (a[j] > b[j]) cnt++; } if (cnt > n / 2) cnta++; } printf("%.3lf\n", (double)cnta / num); return 0; }