๋ฌธ์
https://www.acmicpc.net/problem/2506
์ค๋ช
๋ฐ๋ก ์ ๋ฌธ์ ์ ์ ์ฌํ๊ฒ ๋ฐฐ์ด์ ๊ฒ์ฌํ๋ฉด์ ๋ฐฐ์ด์ i ์ i-1 ์๋ฆฌ๋ฅผ ๋น๊ตํ์ฌ 1 ์ด ์ฐ์๋๋์ง๋ฅผ ๊ณ ๋ คํ์ฌ ์ ์์ ๊ฐ์ฐ์ ์ด ๋ถ๋๋กํ์ฌ ์ต์ข ์ ์ผ๋ก ์ ์๋ฅผ ์ฐ์ถํ๋ฉด ๋๋ ๊ฒ ์ด์๋ค. ๋ช๋ฒ ์ฐ์๋๋์ง๋ combo ๋ณ์๋ฅผ ํตํด์ ์ธ๋๋ก ํ์๊ณ , ์ต์ข ์ ์ผ๋ก ์ ์๋ score ๋ณ์์ ๋ชจ์ด๋๋ก ํ์๋ค. ๋ ์์ค์ ์ฃผ์์ ๋ณด๋ฉด ์๊ฒ ์ง๋ง i ๊ฐ 0 ์ผ๋๋ ์๋ฐฐ์ด์ด ์์ด ๋น๊ตํ ๋์์ด ์์ผ๋ฏ๋ก ๋ณ๋๋ก ๋ฐ๋ก ๊ฒ์ฌ๋ฅผ ํด ์ ์๋ฅผ ํ์ ํ๋๋ก ํ์๋ค.
์ฝ๋
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
int main()
{
int n,array[100],score=0,combo=0;
scanf("%d",&n);
for (int i = 0; i < n; i++)
{
scanf("%d", &array[i]);
if (i != 0)
{
if (array[i - 1] == 1 && array[i] == 1)
{
score += (combo + 1);
combo++;
}
else if (array[i] == 1)
{
score++;
combo++;
}
else
combo = 0;
}
else if (array[i] == 1)
{
score++;
combo++;
}
}
printf("%d", score);
return 0;
}