Codeforces Round 370 (Div. 2)(前三题)

瞎扯淡

整valine 1h后才去,看群里说要去cf打,vj又卡所以这次我直接在cf打的,打完再交vj的话我感觉不大好几分钟一个题,索性就直接不提交vj了
最近整这些博客也是弄得有些飘手又生了需要找找手感

A. Memory and Crow(思维&&数学)

胡乱分析

实际上证明也可以,上来也可以看出来就是相邻两项的和加起来就可以了,注意一下最后一项单独输出即可

代码

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include <bits/stdc++.h>
using namespace std;
int num[666666];
int main()
{
ios::sync_with_stdio(0);
cin.tie(0);
cout.tie(0);
int n;
cin>>n;
for(int i=1;i<=n;i++)
cin>>num[i];
for(int i=2;i<=n;i++)
cout<<num[i]+num[i-1]<<" ";
cout<<num[n];
}

B Memory and Trident(思维)

胡乱分析

上来就先wa的题。。。实际上这个题有个简单的方法。
首先我们要注意到奇数个字符是一定不可以的,这个很容易就可以看出来
然后我们还要发现有可能前面的步数会走回到过去的,这是我第一次wa发现的。。。
那么最后的位置是距离原点有多少个x距离和y距离就有关于我们修改步数的个数了
当然x和y看上去应该都是偶数实际上两个奇数相加也可能是偶数
这里还需要思考一下,如果两个奇数相加会怎样,实际上还是把一个改成另一个即可了
也就是说x变成y的步数,因为这里是随意更改的很随意的一种感觉
最后我们可以得出结论答案就是(abs(x)+abs(y))/2
这里确实不好说明情况,但是肯定是存在能搬回去的步子的
还有一个codeforces的题跟这个任意修改的感觉挺像的
B. Jumping Jack

代码

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
#include <bits/stdc++.h>
using namespace std;
int main()
{
ios::sync_with_stdio(0);
cin.tie(0);
cout.tie(0);
string a;
int x=0,y=0;
cin>>a;
if(a.size()&1)
return cout<<-1,0;
for(int i=0;i<a.size();i++)
{
if(a[i]=='U')
x++;
else if(a[i]=='D')
x--;
else if(a[i]=='R')
y++;
else if(a[i]=='L')
y--;
}
cout<<(abs(x)+abs(y))/2;
}

Memory and De-Evolution(思维&&数学)

胡乱分析

首先我们要知道两边之和与第三边的关系,这就是这个题唯一的数学储备。然后我们看第三个样例发现我要是直接22-4不如22-7好,那么我们如何去寻找到这个x=7找到最优的这一步呢?接下去的最优步又怎么找呢?
这里确实比较复杂,我是搞不出来。但是如果一想我们倒着来,也就是说我们不管你初始化边长如何,我们用短的去一直往上走最优解看什么时候三条边都走回到大于等于x即可,这样每次都是能保证是最优的所以可以保证能用最少的步数

代码

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#include <bits/stdc++.h>
using namespace std;
int main()
{
ios::sync_with_stdio(0);
cin.tie(0);
cout.tie(0);
int x,y,a,b,c,ans=0;
cin>>x>>y;
a=b=c=y;
while(1)
{
if(a>=x&&b>=x&&c>=x)
return cout<<ans,0;
ans++;
if(ans%3==0)
a=b+c-1;
else if(ans%3==1)
b=a+c-1;
else if(ans%3==2)
c=a+b-1;
}
}
就算是一分钱,也是对作者极大的支持
------ 本文结束 ------

版权声明

Baccano by baccano is licensed under a Creative Commons BY-NC-ND 4.0 International License.
baccano创作并维护的Baccano博客采用创作共用保留署名-非商业-禁止演绎4.0国际许可证
本文首发于baccano 博客( http://baccano.fun ),版权所有,侵权必究。

小游戏

---小游戏:要不要来选择一下自己可能的老婆?---

简易发声器

---简易的七键钢琴插件---

可以使用鼠标点击琴键也可以使用主键盘1-7或者小键盘的1-7来操作

那么现在开始吧

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
0%