CF 999 div3

A

從左往右掃一遍統計答案,如果等於n就輸出n,否則再從右往左掃一遍,再原來的答案上累加答案

#include <iostream>
#include <cstdio>
using namespace std;
int a[105], n, k;
int main() {
    cin >> n >> k;
    for (int i = 1; i <= n; ++i) cin >> a[i];
    int ans = 0;
    for (int i = 1; i <= n; ++i) {
        if (a[i] <= k) ++ans;
        else break;
    }
    if (ans == n) {
        cout << n << endl;
        return 0;
    }
    for (int i = n; i >= 1; --i) {
        if (a[i] <= k) ++ans;
        else break;
    }
    cout << ans << endl;
    return 0;
}

B

掃一遍,如果能被n整除,那就翻轉從1到這裏的整個區間

#include <iostream>
using namespace std;
int main(){
    int n;
    string s;
    cin>>n>>s;
    for(int i=1;i<=n;i++)
        if(n%i==0)
            for(register int j=0;j<i/2;j++) {
                char temp=s[j];
                    s[j]=s[i-j-1];
                    s[i-j-1]=temp;
            }
    cout<<s<<endl;
    return 0;
}

C

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章