您当前的位置: 首页 > 

先求一个导

暂无认证

  • 0浏览

    0关注

    291博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

abc242 D(脑子一团浆糊)

先求一个导 发布时间:2022-03-05 22:53:13 ,浏览量:0

题目 题意: 给定仅含A、B、C的字符串,进行至多t = 1e18次迭代,每次迭代是独立地将A->BC,B->CA,C->AB.求t次迭代后,第k个位置的字母是what? 思路: 感觉是除除除,因为我们可以根据k反推推回它是由数组原始位置的哪个字母变来的。然后哩?如果t很大,我们发现这个字母是a、b、c轮着变换的,%3即可。注意这里下标从0开始,方可保证%3正确性和一致性。怎么想出来的俺也不知道,被自己菜哭了,今晚连着两把都被暴捶。 时间复杂度: O(log1e18) 代码:

// Problem: D - ABC Transform
// Contest: AtCoder - AtCoder Beginner Contest 242
// URL: https://atcoder.jp/contests/abc242/tasks/abc242_d
// Memory Limit: 1024 MB
// Time Limit: 2000 ms
// 
// Powered by CP Editor (https://cpeditor.org)

#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#define OldTomato ios::sync_with_stdio(false),cin.tie(nullptr),cout.tie(nullptr)
#define fir(i,a,b) for(int i=a;i>T;
   // read(T);
   while(T--)
   {
   	 solve();
   }
   return 0;
}
关注
打赏
1662037414
查看更多评论
立即登录/注册

微信扫码登录

0.0378s