关注
烽火台。。。我的代码很蠢
int main(){
int n;
while (cin >> n){
vector<int> heights(n, 0);
for (int i = 0; i < n; ++i){
cin >> heights[i];
}
int cnt = n;
for (int i = 0; i < n; ++i){
heights.push_back(heights[i]);
}
int cnt2 = 0;
set<pair<int, int>> twins;
for (int i = 0; i < n; ++i){
for (int j = i + 2; j < i + n - 1; ++j){
bool seen = true;
for (int k = i + 1; k < j; ++k){
if (heights[k] > heights[i] || heights[k] >
heights[j]){
seen = false;
break;
}
}
if (seen){
int ii = i % n, jj = j % n;
if (ii > jj){
twins.insert({ ii, jj });
}
else{
twins.insert({ jj, ii });
}
seen = false;
}
}
}
for (int i = 2 * n - 1; i >= n; --i){
for (int j = i - 2; j > i - (n - 1); --j){
bool seen = true;
for (int k = i - 1; k > j; --k){
if (heights[k] > heights[i] || heights[k] >
heights[j]){
seen = false;
break;
}
}
if (seen){
int ii = i % n, jj = j % n;
if (ii > jj){
twins.insert({ ii, jj });
}
else{
twins.insert({ jj, ii });
}
seen = false;
}
}
}
cnt = cnt + twins.size();
cout << cnt << endl;
}
}
查看原帖
点赞 评论
相关推荐
牛客热帖
更多
正在热议
更多
# 秋招落幕,你是He or Be #
888次浏览 34人参与
# 应届生进小公司有什么影响吗 #
108378次浏览 1105人参与
# 重来一次,你会对开始求职的自己说 #
1510次浏览 33人参与
# 团建是“福利”还是是 “渡劫” #
2727次浏览 63人参与
# 一人说一个提前实习的好处 #
1871次浏览 28人参与
# 实习没事做是福还是祸? #
5608次浏览 87人参与
# 你小心翼翼的闯过多大的祸? #
5360次浏览 82人参与
# OPPO求职进展汇总 #
755651次浏览 5390人参与
# 工作中听到最受打击的一句话 #
1141次浏览 17人参与
# 今年你最想重开的一场面试是? #
907次浏览 17人参与
# 大厂VS公务员你怎么选 #
69573次浏览 643人参与
# 今年形式下双非本找得到工作吗 #
266056次浏览 1541人参与
# 公司情报交流地 #
127252次浏览 1232人参与
# 实习简历求拷打 #
26098次浏览 257人参与
# 从顶到拉给所有面过的公司评分 #
144555次浏览 516人参与
# 面试时间长是好事吗? #
116605次浏览 706人参与
# 面试尴尬现场 #
209212次浏览 851人参与
# 找不到好工作选择GAP真的丢人吗 #
93793次浏览 1008人参与
# 投格力的你,拿到offer了吗? #
155385次浏览 829人参与
# 作业帮求职进展汇总 #
85859次浏览 559人参与
