摘要:
Shuffle'm Up大意:已知两堆牌s1和s2的初始状态, 其牌数均为c,按给定规则能将他们相互交叉组合成一堆牌s12,再将s12的最底下的c块牌归为s1,最顶的c块牌归为s2,依此循环下去。现在输入s1和s2的初始状态 以及 预想的最终状态s12。问s1 s2经过多少次洗牌之后,最终能达到状态s12,若永远不可能相同,则输出"-1"思路:就是个字符串模拟题。 1 #include 2 #include 3 4 void Solve() 5 { 6 int n, m; 7 char s1[110], s2[110], s3[210], s4[210], s[21 阅读全文
摘要:
Prime Path大意:给你两个数,求从第一个数经过几次变换到第二个数。变换要求:1.中间数必须是素数 2.每次只能变一个数字。思路:对每一位数字进行bfs 1 #include 2 #include 3 #include 4 #include 5 #include 6 #include 7 #include 8 #include 9 #include 10 #define LL long long 11 #define min(a,b) (a>b?b:a) 12 #define max(a,b) (a>b?a:b) 13 #define eps 1e-... 阅读全文
摘要:
能被1整除的数: 好像是所有数都行能被2整除的数: 末位数字是偶数的数能被3整除的数: 各位数字之和能被3整除能被4整除的数: 末尾两位数字能被4整除能被5整除的数: 末位是0或5的数能被6整除的数: 既能被2整除,又能被3整除★能被7整除的数: 方法1(割尾法):(适用于数字位数较少)一个数割去末位数字,从留下的数中减去割掉数字的两倍,减过之后如果能被7整除,原数能被7整除,如果不能直接判断,重复操作。Eg:133:13-3*2=7,所以133是7的倍数; 6139: 613-9*2=595,59-5*2=49,所以6139是7的倍数。 方法2(末三法):(适用于位数大于... 阅读全文