AtCoder 生活　38日目

[前回]()

#38日目
今回は、[AtcoderProblemsのBoot camp for Beginners](https://kenkoooo.com/atcoder/#/training)のEasy問題を6問解きました。

|問題|難易度|自力で解けた|かかった時間|
|:-:|:-:|:-:|---|---|
|ABC083|B|◯|19分14秒|
|ABC093|B|✕|87分34秒|
|ABC050|B|◯|19分14秒|
|ABC049|B|◯|17分5秒|
|ABC148|D|◯|28分22秒|
|ABC058|B|◯|9分33秒|

##[ABC083_B](https://atcoder.jp/contests/abc083/tasks/abc083_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>;

int main(){
    int n,a,b;
    cin >> n >> a >> b;
    int sum = 0;
    for(int i = 1;i <= n;i++){
        int k = 0;
        int j = i;
        while(j > 0){
            k += j%10;
            j /= 10;
        }
        if(a <= k && k <= b) sum += i;
    }
    cout << sum << endl;
}

```

解くのにかかった時間：19分14秒


##[ABC093_B](https://atcoder.jp/contests/abc093/tasks/abc093_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>;

int main(){
    int a,b,k;
    cin >> a >> b >> k;
    if(((b-a+1) <= k*2)){
        for(int i = a;i <= b;i++){
            cout << i << endl;
        }
    }
    else{
        for(int i = a;i < a+k;i++) cout << i << endl;
        for(int i = b - k + 1;i < b+1;i++) cout << i << endl;
    }
}

```

解くのにかかった時間：87分34秒
感想：場合分けすれば簡単にかけることに気づけなかった。


##[ABC050_B](https://atcoder.jp/contests/abc050/tasks/abc050_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>;

int main(){
    int n;
    cin >> n;
    int sum = 0;
    vector<int> s(n);
    rep(i,n){
        cin >> s[i];
        sum += s[i];
    }
    int m;
    cin >> m;
    vector<pii> t(m);
    rep(i,m){
        int p,x;
        cin >> p >> x;
        t[i].first = p;
        t[i].second = x;
    }
    rep(i,m){
        cout << sum - s[t[i].first-1] + t[i].second << endl;
    }
}

```

解くのにかかった時間：19分14秒


##[ABC049_B](https://atcoder.jp/contests/abc049/tasks/abc049_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>;

int main(){
    int h,w;
    cin >> h >> w;
    vector<string> c(h);
    rep(i,h){
        cin >> c[i];
        cout << c[i] << endl;
        cout << c[i] << endl;
    }
}

```

解くのにかかった時間：17分5秒


##[ABC148_D](https://atcoder.jp/contests/abc148/tasks/abc148_d)

```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 n;
    cin >> n;
    int cnt = 0;
    vector<int> a(n);
    rep(i,n) cin >> a[i];
    int j = 1;
    rep(i,n){
        if(a[i] == j){
            cnt++;
            j++;
        }
    }
    if(cnt == 0) cout << -1 << endl;
    else cout << n - cnt << endl;
}

```

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


##[ABC088_B](https://atcoder.jp/contests/abc058/tasks/abc058_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>;

int main(){
    string o,e;
    cin >> o >> e;
    rep(i,o.size()){
        cout << o[i];
        if(i != e.size())cout << e[i];
    }
}

```

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

###最後に
大体の問題は解けるので、速さを意識して進めていきたいです。


|難易度|かかった平均時間|解けた問題数|
|:-:|---|---|
|B|16分16秒|5問中4問|
|D|28分22秒|1問中1問|