結果
問題 | No.11 カードマッチ |
ユーザー |
|
提出日時 | 2019-12-28 02:00:33 |
言語 | C (gcc 13.3.0) |
結果 |
AC
|
実行時間 | 1 ms / 5,000 ms |
コード長 | 927 bytes |
コンパイル時間 | 218 ms |
コンパイル使用メモリ | 30,976 KB |
実行使用メモリ | 6,820 KB |
最終ジャッジ日時 | 2024-10-10 03:44:39 |
合計ジャッジ時間 | 1,012 ms |
ジャッジサーバーID (参考情報) |
judge4 / judge3 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
other | AC * 19 |
ソースコード
#include <stdio.h>#include <stdlib.h>long kind(long nums[], int N);int main(void) {long W;long H;int N;long S[100];long K[100];long kS;long kK;long match = 0;scanf("%ld", &W);scanf("%ld", &H);scanf("%d", &N);for (int i = 0; i < N; i++) {scanf("%ld", &S[i]);scanf("%ld", &K[i]);}kS = kind(S, N);kK = kind(K, N);match += (kS*H + kK*W - kS*kK - N);printf("%ld\n", match);return EXIT_SUCCESS;}long kind(long nums[], int N) {if (N == 1) {return 1;}long t;for (int i = N; i > 1; i--) {for (int j = 1; j < i; j++) {if (nums[j-1] > nums[j]) {t = nums[j-1];nums[j-1] = nums[j];nums[j] = t;}}}int k = 1;for (int i = 1; i < N; i++) {if (nums[i-1] != nums[i]) {k++;}}return k;}