結果
| 問題 |
No.116 門松列(1)
|
| コンテスト | |
| ユーザー |
aoharu9825
|
| 提出日時 | 2019-07-18 23:05:22 |
| 言語 | C (gcc 13.3.0) |
| 結果 |
AC
|
| 実行時間 | 1 ms / 5,000 ms |
| コード長 | 938 bytes |
| コンパイル時間 | 320 ms |
| コンパイル使用メモリ | 31,872 KB |
| 実行使用メモリ | 5,248 KB |
| 最終ジャッジ日時 | 2024-12-25 22:43:08 |
| 合計ジャッジ時間 | 1,242 ms |
|
ジャッジサーバーID (参考情報) |
judge3 / judge4 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 3 |
| other | AC * 21 |
ソースコード
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
#include<math.h>
typedef long long int ll;
ll llMAX(ll a, ll b){return a>b?a:b;}
ll llMIN(ll a, ll b){return a>b?b:a;}
int MAX(int a, int b){return a>b?a:b;}
int MIN(int a, int b){return a>b?b:a;}
int compare(const void* a, const void* b){return *(int*)a - *(int*)b;}
ll digits(ll a){ll tmp=a; ll cnt=0; while(tmp>0){tmp/=10; cnt+=1;} return cnt;}
int main(void){
int n;
scanf("%d", &n);
int a[n];
for(int i=0; i<n; i++){
scanf("%d", &a[i]);
}
int res = 0;
for(int i=0; i<=n-3; i++){
int max = 0;
int min = 101;
for(int j=i; j<i+3; j++){
max = MAX(max, a[j]);
min = MIN(min, a[j]);
}
if(max==a[i+1] || min==a[i+1]){
if(a[i]!=a[i+1] && a[i+1]!=a[i+2] && a[i+2]!=a[i]){
res += 1;
}
}
}
printf("%d\n", res);
return 0;
}
aoharu9825