AtCoder 生活　51日目

[前回](https://qiita.com/flandrescarlet237/items/831d8b56d4a4cf946dd0)

#51日目
今回は、A問題を4問、B問題を4問、C問題を1問解きました。

|問題|難易度|自力で解けた|かかった時間|
|:-:|:-:|:-:|---|---|
|ABC027|A|◯|18分30秒|
|ABC027|B|✕|73分44秒|
|ABC026|A|◯|3分|
|ABC026|B|◯|39分50秒|
|ABC025|A|◯|22分6秒|
|ABC025|B|◯|31分18秒|
|ABC024|A|◯|8分1秒|
|ABC024|B|◯|33分46秒|
|ABC101|C|✕|132分3秒|


##[ABC027](https://atcoder.jp/contests/abc027)

###A

```c++

#include <bits/stdc++.h>
#define rep(i,n) for(int i = 0;i < (n);i++)
using namespace std;
using ll = long long;
using pii = pair<int,int>;

int main(){
    vector<int> l(3);
    rep(i,3)cin >> l[i];
    if(l[0] == l[1] && l[1] == l[2]){
        cout << l[0] << endl;
        return 0;
    }
    if(l[0] == l[1]) cout << l[2] << endl;
    if(l[0] == l[2]) cout << l[1] << endl;
    if(l[1] == l[2]) cout << l[0] << endl;
}

```
解くのにかかった時間：18分30秒


###B


```c++

#include <bits/stdc++.h>
#define rep(i,n) for(int i = 0;i < (n);i++)
using namespace std;
using ll = long long;
using pii = pair<int,int>;
using pil = pair<pii,int>;


int main(){
    int n;
    cin >> n;
    int sum = 0;
    vector<int> a(n);
    rep(i,n){
        cin >> a[i];
        sum += a[i];
    }
    int r = sum/n;
  	if(sum%n != 0){
    	cout << -1 << endl;
      	return 0;
    }
    int ans = 0;
    int p = 0;
    rep(i,n){
        p += a[i] - r;
        if(p != 0)ans++;
    }
    cout << ans << endl;
}

```
解くのにかかった時間：73分44秒
感想：なかなか自分では形にならなかった。


##[ABC026](https://atcoder.jp/contests/abc026)

###A

```c++

#include <bits/stdc++.h>
#define rep(i,n) for(int i = 0;i < (n);i++)
using namespace std;
using ll = long long;
using pii = pair<int,int>;

int main(){
    int a;
    cin >> a;
    a /= 2;
    cout << a*a << endl;
}

```
解くのにかかった時間：3分


###B


```c++

#include <bits/stdc++.h>
#define rep(i,n) for(int i = 0;i < (n);i++)
using namespace std;
using ll = long long;
using pii = pair<int,int>;
using pil = pair<pii,int>;

double pi = 3.14159265358979;

int main(){
    int n;
    cin >> n;
    vector<int> r(n);
    rep(i,n) cin >> r[i];
    sort (r.rbegin(),r.rend());
    int s;
    rep(i,n){
        if(i%2 == 0) s += r[i]*r[i];
        else s -= r[i]*r[i];
    }
    double ans = s*pi;
    cout << fixed << setprecision(10) << ans << endl;
}

```
解くのにかかった時間：39分50秒


##[ABC025](https://atcoder.jp/contests/abc025)

###A

```c++

#include <bits/stdc++.h>
#define rep(i,n) for(int i = 0;i < (n);i++)
using namespace std;
using ll = long long;
using pii = pair<int,int>;


int main(){
    string s;
    cin >> s;
    int n;
    cin >> n;
    int a = (n-1)/5;
    int b = (n+4)%5;
    cout << s[a] << s[b] << endl;
}


```
解くのにかかった時間：22分6秒


###B


```c++

#include <bits/stdc++.h>
#define rep(i,n) for(int i = 0;i < (n);i++)
using namespace std;
using ll = long long;
using pii = pair<int,int>;
using pil = pair<string,int>;

int main(){
    int n,a,b;
    cin >> n >> a >> b;
    int sum = 0; 
    rep(i,n){
        string s;
        int d;
        cin >> s >> d;
        int r;
        if(d < a) r = a;
        if(a <= d && d <= b) r = d;
        if(b < d)r = b;
        if(s == "East") sum += r;
        else sum -= r;
    }
    if(sum == 0){
        cout << 0 << endl;
        return 0;
    }
    if(0 < sum) cout << "East" << " " << sum << endl;
    if(sum < 0) cout << "West" << " " << abs(sum) << endl;
}

```
解くのにかかった時間：31分18秒


##[ABC024](https://atcoder.jp/contests/abc024)

###A

```c++

#include <bits/stdc++.h>
#define rep(i,n) for(int i = 0;i < (n);i++)
using namespace std;
using ll = long long;
using pii = pair<int,int>;

int main(){
    int a,b,c,k;
    cin >> a >> b >> c >> k;
    int s,t;
    cin >> s >> t;
    int sum = 0;
    sum += a*s;
    sum += b*t;
    if((s+t) >= k) sum -= (s+t)*c;
    cout << sum << endl;
}

```
解くのにかかった時間：8分1秒


###B


```c++

#include <bits/stdc++.h>
#define rep(i,n) for(int i = 0;i < (n);i++)
using namespace std;
using ll = long long;
using pii = pair<int,int>;
using pil = pair<pii,int>;

int main(){
    int n,t;
    cin >> n >> t;
    ll sum = t;
    vector<int> a(n);
    rep(i,n) cin >> a[i];
    sort(a.begin(),a.end());
    rep(i,n-1){
        if((a[i+1] - a[i]) <= t) sum += (a[i+1] - a[i]);
        else sum += t;
    }
    cout << sum << endl;
}

```
解くのにかかった時間：33分46秒


##[ABC101_C](https://atcoder.jp/contests/abc101/tasks/arc099_a)

```c++

#include <bits/stdc++.h>
#define rep(i,n) for(int i = 0;i < (n);i++)
using namespace std;
using ll = long long;
using pii = pair<int,int>;

int main(){
    ll n,k;
    cin >> n >> k;
    ll ans = (n-2)/(k-1) + 1;
    cout << ans << endl;
}

```

解くのにかかった時間：132分3秒
感想：深く考えなければかなり簡単な解き方だった。


###最後に
茶色diffがなかなか解けるようにならない

難易度|かかった平均時間|解けた問題数|
|:-:|---|---|
|A|12分20秒|4問中4問|
|B|34分44秒|3問中4問|