結果
| 問題 |
No.178 美しいWhitespace (1)
|
| コンテスト | |
| ユーザー |
monburan_0401
|
| 提出日時 | 2018-09-18 16:16:48 |
| 言語 | C (gcc 13.3.0) |
| 結果 |
WA
|
| 実行時間 | - |
| コード長 | 648 bytes |
| コンパイル時間 | 103 ms |
| コンパイル使用メモリ | 29,952 KB |
| 実行使用メモリ | 6,948 KB |
| 最終ジャッジ日時 | 2024-07-18 08:00:09 |
| 合計ジャッジ時間 | 867 ms |
|
ジャッジサーバーID (参考情報) |
judge1 / judge2 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | WA * 4 |
| other | WA * 21 |
コンパイルメッセージ
main.c: In function 'main':
main.c:18:21: warning: passing argument 4 of 'qsort' from incompatible pointer type [-Wincompatible-pointer-types]
18 | qsort(C,N,8,c); // (配列、データ数、1つのメモリ、並び順)
| ^
| |
| int (*)(int *, int *)
In file included from main.c:2:
/usr/include/stdlib.h:839:34: note: expected '__compar_fn_t' {aka 'int (*)(const void *, const void *)'} but argument is of type 'int (*)(int *, int *)'
839 | __compar_fn_t __compar) __nonnull ((1, 4));
| ~~~~~~~~~~~~~~^~~~~~~~
ソースコード
#include <stdio.h>
#include <stdlib.h>
int c(int*a,int*b){return*a-*b;} // これを long でも通用するように
int main(void){
int N;
int a,b;
long int C[1000];
long int count = 0;
scanf("%d",&N);
for(int i = 0; i < N; i++){
scanf("%d %d",&a,&b);
C[i] = a + b * 4;
}
qsort(C,N,8,c); // (配列、データ数、1つのメモリ、並び順)
// check ok
for(int k = 0; k < N; k++){
printf("%d ",C[k]);
}
printf("\n");
for(int j = 0; j < N-1; j++){
if( (C[j+1] - C[j]) % 2 != 0 ){
printf("-1\n");
return 0;
}else{
count += (C[j+1] - C[j]) / 2 * (j+1);
}
}
printf("%ld\n",count);
return 0;
}
monburan_0401