ZOJ - Problem Set - 3985 String of CCPC

제목 링크: 클릭 하여 링크 열기
제목
문제 풀이 방향: 첫 번 째 무료 C 또는 P 만 구 매 하면 됩 니 다. 그 다음 의 소 모 는 최종 가치 보다 많 기 때문에 필요 하지 않 습 니 다. 그래서 결 과 는 현재 String 의 'CCPC' 개 수 를 통계 하거나 (중첩 가능) 전자 + 1 입 니 다.또한 CCPC 는 중간 에 있 는 'CP' 가 사용 되면 사용 가치 가 없고 머리 와 끝의 'C' 만 기여 할 가치 가 있 기 때문에 사용 한 'CP' 를 지 우 는 것, 즉 표 시 를 하 는 것 이다.(vis [maxn] 배열 로 직접 표시 하면 TLE 입 니 다. 여기 서 교묘 한 방법 을 사용 합 니 다. s [i] = '\ #' 를 사용 한 적 이 있 습 니 다)
AC 코드
#include
#include

#define mem(a,b) memset(a,b,sizeof a);

using namespace std;

typedef long long ll;

const int maxn=2e5+10;
char s[maxn];
//int vis[maxn]; //    ,    main    

int main()
{
    int T; scanf("%d",&T);
    int n;
    while(T-- && ~scanf("%d%s",&n,s))
    {
//        int vis[n+10]; // AC
//        mem(vis,0);
        int rs=0;
        for(int i=0;i

좋은 웹페이지 즐겨찾기