Trang chủ Tin Học Lớp 7 Duyệt binh Tên file: ARMY.CPP Vào năm 1945, Liên Xô đang đánh nhau với phát xít Đức hết sức ác...
Câu hỏi :

Duyệt binh Tên file: ARMY.CPP Vào năm 1945, Liên Xô đang đánh nhau với phát xít Đức hết sức ác liệt. Hàng triệu thanh niên Liên Xô phải lên đường nhập ngũ. Một cuộc duyệt binh diễn ra, các tân binh không biết đứng quay mặt về bên nào liền xếp tùy ý, vị tổng chỉ huy thấy thể liền ra lệnh: Nếu hai tân binh liên tiếp và đối mặt với nhau thì ngay lập phải quay ngược lại(180 độ), động tác này diễn ra trong vòng 1s!. Người tổng chỉ huy muốn biết sau bao lâu thì thì đội hình sẽ ngừng quay? Input: ARMY.INP Dòng đầu ghi số nguyên N là số tân binh. Dòng thứ hai gồm đúng N kí tự <, > thể hiện cách đứng của các tân binh. Nếu hai tân binh liên tiếp quay mặt vào nhau thì sẽ được biểu diễn bởi ><. Output: ARMY.OUT Gồm một số duy nhất ghi thời gian ít nhất để đội hình ngừng quay. Giới hạn: Kích thước: 1 n 1000000 Thời gian: 1 s/test Bộ nhớ: 2 MB Ví dụ: ARMY.INP ARMY.OUT 4 <><> 1 Giải thích: Tại thời điểm 0: <><> Tại thời điểm 1: <<>>

Lời giải 1 :

#pragma GCC optimize ("O3")
#include <bits/stdc++.h>
#define freopen(n) freopen(n".INP","r",stdin);freopen(n".OUT","w",stdout);
#define ll long long
#define pll pair<ll,ll>
#define vll vector<ll>
#define lcm(a,b) (a*b)/__gcd(a,b);
#define all(s) s.begin(),s.end()
#define MOD 1000000007LL
#define MAXN 1000000
using namespace std;
ll n,d=0,l1=0,l2=0;
char a[MAXN+7];
int main(){
    ios_base::sync_with_stdio(0);
    cin.tie(0);cout.tie(0);
    //freopen("Khoidepzaivip999");
    cin>>n;
    for(int i=0;i<n;i++){
        cin>>a[i];
    }
    while(a[n-1]=='>') n--;
    for(int i=n-1;i>=0;i--){
        if(a[i]=='>'){
            if(l2>0) d=max(d,l1+l2);
            l1++;
        }
        else{
            l1--; if(l1<0) l1=0;
            l2++;
        }
    }

    cout<<d<<'\n';
    return 0;
}

Bạn có biết?

Tin học là một ngành khoa học chuyên nghiên cứu quá trình tự động hóa việc tổ chức, lưu trữ, xử lý và truyền dẫn thông tin của một hệ thống máy tính cụ thể hoặc trừu tượng. Tin học bao hàm tất cả các nghiên cứu và kỹ thuật có liên quan đến việc mô phỏng, biến đổi và tái tạo thông tin. Hãy tận dụng sức mạnh của tin học để giải quyết các vấn đề và sáng tạo ra những giải pháp mới!

Nguồn :

Wikipedia - Bách khoa toàn thư

Tâm sự lớp 7

Lớp 7 - Năm thứ hai ở cấp trung học cơ sở, một chuỗi quay mới lại đến và chúng ta vẫn bước tiếp trên con đường học sinh. Học tập vẫn là nhiệm vụ chính, hãy luôn kiên trì và không ngừng cố gắng!

Nguồn :

sưu tập

Copyright © 2024 Giai BT SGK