题目:
思路:
找到要相互间隔的两条语句,然后比较位置,如果两者之间的距离大于或等于3不需要处理,否则,进行添加空语句。
代码详解:
#include#include using namespace std; int n; int a[200]={0}; int main() { scanf("%d", &n); for (int i = 1; i <= n; i++) { //标记是第多少句 a[i] = a[i - 1] + 1; for (int j = 1; j <= 3; j++) { int x; scanf("%d", &x); if (x)//如果该行要进行操作,观察第i句与第i-j句相差是否大于等于4条语句 { //如果大于或等3条语句,不需要添加空语句,反则添加 a[i] = max(a[i], a[i - j] + 4);//加4是因为间隔3语句后所在的语句也相当于一条语句 } } } printf("%d", a[n] - n); return 0; }
PS:新年快乐新年快乐新年快乐新年快乐新年快乐新年快乐新年快乐新年快乐新年快乐新年快乐新年快乐新年快乐新年快乐新年快乐新年快乐新年快乐新年快乐新年快乐新年快乐新年快乐新年快乐新年快乐新年快乐新年快乐新年快乐新年快乐新年快乐新年快乐新年快乐新年快乐新年快乐新年快乐新年快乐新年快乐新年快乐新年快乐新年快乐新年快乐新年快乐新年快乐新年快乐新年快乐新年快乐新年快乐新年快乐新年快乐新年快乐新年快乐新年快乐新年快乐新年快乐新年快乐新年快乐
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)