www.acmicpc.net/problem/2591

 

2591번: 숫자카드

1부터 34까지 수가 적힌 카드가 충분히 많이 있다. 이들 중 몇 장을 일렬로 늘어놓고, 그 숫자를 차례로 적었다. 예를 들어 아래와 같이 카드가 놓인 경우 숫자를 차례로 적으면 27123이 된다. 나중

www.acmicpc.net

 

[ 한국정보올림피아드 지역본선 2005 중등부3번 초등부5번 숫자카드 입출력데이터 ]

숫자카드 입출력데이터.zip
0.00MB

 

[ 한국정보올림피아드 지역본선 2005 중등부3번 초등부5번 숫자카드 소스 코드 ]

#include <stdio.h>
#include <string.h>
char a[50];
long long b[50];

int main()
{	
	int i, k;
	
	scanf("%s", a+1); 
	k=strlen(a+1); 
	
	b[0]=1;
	b[1]=1;
	
	a[1]-='0';  
	//문자열로 입력 받아서 숫자로 변환하기 위해 -48을 한다
	//'0'의 아스키코드값 = 48 

	for(i=2;i<=k;i++)
	{
		a[i]-='0';
		
		if(a[i]!=0) 
			b[i]=b[i-1];
			
		if((a[i-1]*10)+a[i] <= 34 && a[i-1] != 0) 
			b[i]+=b[i-2];
		
	}
	printf("%lld", b[k]);
	return 0;
}

'백준 문제풀이' 카테고리의 다른 글

백준 2568번 2565번 - 전깃줄  (0) 2021.04.16
백준 2503번 - 숫자 야구  (0) 2021.04.15
백준 2607번 - 비슷한 단어  (0) 2021.04.14
백준 17608번 - 막대기  (0) 2021.03.28
백준 19942번 - 다이어트  (0) 2021.03.28
Posted by 명문코딩컴퓨터
,