본문 바로가기

PS/Educational Codeforces

Educational Codeforces Round 009. A

반응형

A. Grandma Laura and Apples

문제

https://codeforces.com/contest/632/problem/A

 

Problem - A - Codeforces

 

codeforces.com

 

문제요약

할머니가 사과를 파는데 half로 팔면 절반 딱 떨어지게 팔고 halfplus로 팔면 홀수개라 자투리는 선물로 주는 상황

사과 하나 값(항상 짝수)이 주어질 때 판 번 돈(사과개수X사과값) 구하기 (반쪽을 팔수도 있음)

 

풀이

half면 짝수개일 때 딱 떨어지게 절반 팔았고

halfplus면 홀수개일 때 덤을 줬다는 말

즉 뒤에서부터 보면서 계산하면 됨

개수에 대해서 halfplus면 +1 후 2배

아니라면 그냥 2배하면서 판 사과개수 확인

단 개수가 클 수 있으므로 long long을 쓸 것

 

소스코드

#include <stdio.h>
typedef long long ll;
int main(){
    ll n, m, k=0, p=0;
    scanf("%lld%lld",&n,&m); m>>=1;
    bool c[100]={0};
    for(int i=0; i<n; ++i){
        char s[10];
        scanf("\n%s",s);
        if(s[4]=='p') c[i]=1;
    }
    for(int i=n-1; i>=0; --i){
        if(c[i]) ++k;
        p+=k, k<<=1;
    }
    printf("%lld",p*m);
}
반응형