“天意终究难参,假若登顶成憾,与君同添|

zsdqwq

园龄:3年6个月粉丝:9关注:17

2022-03-13 14:39阅读: 26评论: 0推荐: 0

CF1392A Omkar and Password思路

可以说,这道题目是一道很重要的规律题。

没事闲的看犇的时候看到了这道题目,还是写一篇题解来一下吧,望通过,这样我就能橙了 qwq

首先呢,上述说过了是规律题,得到的规律应该是这样的:

当所以数相等时,数的个数就是最后数列的长度,如果并不是所有数都相等,则 1 为最后的长度。

可以先设这一个为基本的猜想,我要讲的是证明:

都相同时

请看题目中说了

对于两个相邻的且不相同的数,你可以将他们合并起来,即将这两个数替换成它们的和。

因此,可以知道的是,相同的时候一个都合并不了喽 qwq

至少一个不同

如下面的数,可见一定是一个最不利的 qwq:

1 2 2 2 2 2 

如果这列数中有无数多个 2(且假定只有开头的一个 1 ),那么,我们可以先将两个不同的(即 12)进行第一次合并,接着,可以再将两个不同的数(即 23)进行一次合并,之后我们可以发现,每一次合并之后,都会出现一个 不同 的数,而这个不同的数又可以继续合并……因此,最终,不论多长的数,都能化简为所有这些数的和!

上述是验证的过程,下面是全部代码 qwq:

#include <iostream>
using namespace std;
int main() {
	int t;
	cin >> t;
	while (t--) {
		int n;
		cin >> n;
		bool flag = 1;
		int m;
		cin >> m;
		int flag2 = m;
		for (int i = 2; i <= n; i++) {
			int a;
			cin >> a;
			if (a != m) {
				flag = 0;
			}
		}
		if (flag == 0) {
			cout << 1 << endl;
		}
		else {
			cout << n << endl;
		}
	}
}

这是本题的思路,希望对您有帮助 qwq

本文作者:zsdqwq

本文链接:https://www.cnblogs.com/wo-de-bo-ke-wo-zuo-zhu/p/16000442.html

版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 2.5 中国大陆许可协议进行许可。

posted @   zsdqwq  阅读(26)  评论(0编辑  收藏  举报
评论
收藏
关注
推荐
深色
回顶
收起
点击右上角即可分享
微信分享提示