HDU 4891 The Great Pan

어 쩔 수 없 는 다 교 야!!!!!!이렇게 복잡 한 출석 문 제 를 보면 서 4 시간 동안 무시 하고..........................................................
제목 의 뜻 을 이해 하기 어렵다.
아주 긴 문장 을 입력 하 는 것 입 니 다. 구체 적 으로 얼마나 되 는 지 저도 잘 모 르 겠 습 니 다!!그것 이 몇 가지 의미 가 있 는 지 판단 하 라!!!
그 중 두 가지 상황 이 그것 을 만 드 는 것 은 여러 가지 의미 가 있다!!
1. {A | B | C} 은 이 말 이 A 의 뜻 이거 나 B 의 뜻 이거 나 C 의 뜻 이거 나 제목 이 똑 같은 뜻 이 나타 나 지 않 음 을 나타 낸다.
        그러면 이것 은 비교적 조작 하기 쉽다. 바로 통계 {} 안에 몇 개의 "|" 가 있 으 면 된다 는 것 이다. 뜻 의 종 류 는 "|" 숫자 에 1 을 더 하 는 것 이다.
b. $,이 말 은 주로 빈 칸 의 영향 을 받 아 여러 가지 의 미 를 가 져 옵 니 다. 그 중에서 여러 개의 빈 칸 이 연속 되 었 을 때 서로 다른 수량의 빈 칸 도 서로 다른 의 미 를 가 져 옵 니 다!그래서 또 하나의 빈 칸 은 두 가지 의미 가 생 긴 다. 두 개 는 세 가지 가 생 긴 다. 그 다음 에 마지막 에 루 승 하면 된다. 그 중에서 '빈 칸 의 연속 에 영향 을 주지 않 는 다!!!!
제목 의 뜻 을 알 게 되면 이 문 제 는 그리 어렵 지 않 고 복잡 한 문자열 로 처리 된다.
입력 을 잘 모 르 기 때문에 getchar 입력 을 사용 합 니 다.
AC 코드 는 다음 과 같 습 니 다.
#include
#include
#include
#define ll long long
using namespace std;


int main()
{
    ll n;
    char c;
    while(~scanf("%I64d",&n))
    {
        ll dk=0,flag=0,bbj=0;
        ll last1=1,suml,summ,last2=1,bj;
        getchar();
        for(ll i=0;i100000)
                        bbj=1;
                }
                if(c=='$'&&flag==0) {flag=1;summ=0;continue;}
                if(flag==1)
                {
                    if(c==' '&&bj==0) {summ=1;bj=1;}
                    else if(c==' '&&bj==1)
                    {
                        summ++;
                    }
                    if(c!=' '&&c!='
') { last2=last2*(summ+1); summ=0;bj=0; } if(last2>100000) bbj=1; } if(flag==1&&c=='$') flag=0; } } if(bbj) printf("doge
"); else { ll ans = last1 * last2 ; if(ans>100000) printf("doge
"); else printf("%I64d
",ans); } } return 0; }

좋은 웹페이지 즐겨찾기