結果
| 問題 | No.182 新規性の虜 |
| コンテスト | |
| ユーザー |
hum_op
|
| 提出日時 | 2016-01-16 23:31:53 |
| 言語 | C90 (gcc 12.3.0) |
| 結果 |
AC
|
| 実行時間 | 24 ms / 5,000 ms |
| コード長 | 616 bytes |
| コンパイル時間 | 372 ms |
| コンパイル使用メモリ | 21,632 KB |
| 実行使用メモリ | 5,248 KB |
| 最終ジャッジ日時 | 2024-12-26 20:07:13 |
| 合計ジャッジ時間 | 1,640 ms |
|
ジャッジサーバーID (参考情報) |
judge3 / judge4 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 3 |
| other | AC * 27 |
コンパイルメッセージ
main.c: In function ‘main’:
main.c:14:9: warning: ignoring return value of ‘scanf’ declared with attribute ‘warn_unused_result’ [-Wunused-result]
14 | scanf("%d", &N);
| ^~~~~~~~~~~~~~~
main.c:16:17: warning: ignoring return value of ‘scanf’ declared with attribute ‘warn_unused_result’ [-Wunused-result]
16 | scanf("%d", &A[i]);
| ^~~~~~~~~~~~~~~~~~
ソースコード
#include <stdio.h>
#include <stdlib.h>
int cmp_int(const void* v1, const void* v2){
if(*((const int*)v1) > *((const int*)v2)) return 1;
else if(*((const int*)v1) < *((const int*)v2)) return -1;
else return 0;
}
int main(){
int N;
int A[100001];
int i, j, num;
scanf("%d", &N);
for(i = 0; i < N; i++){
scanf("%d", &A[i]);
}
qsort((void *)A, N, sizeof(A[0]), cmp_int);
num = 0;
for(i = 0; i < N; i++){
if(i == 0){
if(A[i] != A[i+1]) num++;
}else if(i == N-1){
if(A[i] != A[i-1]) num++;
}else {
if(A[i] != A[i+1] && A[i] != A[i-1]) num++;
}
}
printf("%d\n", num);
return 0;
}
hum_op