250分题:给定一个4位字符串initial和rotate这个字符串的方式,然后再给另一个字符串current,问current能否由initial通过rotate得到,需要几次rotate?

简单的模拟题,把rotate模拟好就行。

代码:TireRotation

500分题:给定一个等式,求出这个等式是否在x进制下成立(x在2~20之间)。

我的思路是自己写一个BaseAdd模拟进制x下的加法,然后根据等式中两个加数算出在x进制下相加的和,然后和等式中的和比较是否相等。

BaseAdd的实现类似大整数加法,把整数变成字符串然后模拟加法和进位。

代码:BaseMystery

这题看完大神的代码我简直要吐血身亡了,原来java中的Integer.parseInt有一个参数可以指定把字符串转换为x进制的数,然后两个x进制的数是可以直接用+相加的,所以自己没必要实现BaseAdd,灰常简单。下面是Integer.parseInt的部分javadoc:

     * Parses the string argument as a signed integer in the radix
* specified by the second argument. The characters in the string
* must all be digits of the specified radix (as determined by
* whether {@link java.lang.Character#digit(char, int)} returns a
* nonnegative value), except that the first character may be an
* ASCII minus sign {@code '-'} ({@code '\u005Cu002D'}) to
* indicate a negative value or an ASCII plus sign {@code '+'}
* ({@code '\u005Cu002B'}) to indicate a positive value. The
* resulting integer value is returned.

以下是几个自带的例子:

     * parseInt("0", 10) returns 0
* parseInt("473", 10) returns 473
* parseInt("+42", 10) returns 42
* parseInt("-0", 10) returns 0
* parseInt("-FF", 16) returns -255
* parseInt("1100110", 2) returns 102
* parseInt("2147483647", 10) returns 2147483647
* parseInt("-2147483648", 10) returns -2147483648
* parseInt("2147483648", 10) throws a NumberFormatException
* parseInt("99", 8) throws a NumberFormatException
* parseInt("Kona", 10) throws a NumberFormatException
* parseInt("Kona", 27) returns 411787

1000分题:这题就是“宝石迷阵”的超级简化版,给定一个board,问有多少种可能的move,一次move是把一个元素和它周围8个元素中一个互相交换位置(如果这8个元素存在),要求交换后能产生连续3个一行或者一列字符相同时才能交换。

模拟就可以了,自己实现3个函数:交换函数,判断当前交换是否生效函数和某个位置是否合法的函数;然后把board中每个元素和它上面及右边的元素分别交换,看是否能得到一次合法交换(只交换上面和右边是为了避免重复交换)。

代码“:Gems

【Topcoder】SRM158 DIV2总结的更多相关文章

  1. topcoder 594 DIV2 foxandclassroom

    暴力枚举 1 #include <iostream> #include <vector> #include <string> using namespace std ...

  2. topcoder 643 DIV2

    太弱了,太弱了! A:基本的判断吧,然后就是边界问题,写了好久,结果发现时房间第二个交的.. B:真心跪了,还好想出来了,思路想的太慢太慢,结果交上去,落后太多,不过HACK时很多人挂了, 这也是DI ...

  3. ACM学习历程—TopCoder SRM691 Div2

    这是我的第一次打TC,感觉打的一般般吧.不过TC的题目确实挺有意思的. 由于是用客户端打的,所以就不发题目地址了. 300分的题: 这题大意是有一段序列只包含+和数字0~9. 一段序列的操作是,从头扫 ...

  4. TopCoder SRM596 DIV2 1000: SparseFactorialDiv2

    题意: For an integer n, let F(n) = (n - 0^2) * (n - 1^2) * (n - 2^2) * (n - 3^2) * ... * (n - k^2), wh ...

  5. topcoder 649 DIV2

    8 A:模拟 9:B:终于看懂题目... 题意:最多分解K次 每分钟一个数可以分解成两个数 或者-1: 关键字:DP,记忆花搜索. DP[I][J]=min(dp[i][j],1+max(dp[ii] ...

  6. Topcoder 658 650 point

    Topcoder 658 div2 500 加强版 不过给了<=20,暴力肯定不行. 然后想DP方程,先二分可能需要的最大次数mid; 然后根据 mid 构造 DP方程. 假设x[i]需要 x个 ...

  7. Topcoder Srm 673 Div2 1000 BearPermutations2

    \(>Topcoder \space Srm \space 673 \space Div2 \space 1000 \space BearPermutations2<\) 题目大意 : 对 ...

  8. Topcoder Srm 671 Div2 1000 BearDestroysDiv2

    \(>Topcoder \space Srm \space 671 \space Div2 \space 1000 \space BearDestroysDiv2<\) 题目大意 : 有一 ...

  9. 记第一次TopCoder, 练习SRM 583 div2 250

    今天第一次做topcoder,没有比赛,所以找的最新一期的SRM练习,做了第一道题. 题目大意是说 给一个数字字符串,任意交换两位,使数字变为最小,不能有前导0. 看到题目以后,先想到的找规律,发现要 ...

随机推荐

  1. Leetcode392. Is Subsequence

    Description Given a string s and a string t, check if s is subsequence of t. You may assume that the ...

  2. Trees on the level UVA - 122 复习二叉树建立过程,bfs,queue,strchr,sscanf的使用。

    Trees are fundamental in many branches of computer science (Pun definitely intended). Current state- ...

  3. springMVC对简单对象、Set、List、Map的数据绑定和常见问题.

    算了,就不粘贴了,到原文去查看吧! springMVC对简单对象.Set.List.Map的数据绑定和常见问题.

  4. Spring MVC参数方法名称解析器

    以下示例显示如何使用Spring Web MVC框架来实现多动作控制器的参数方法名称解析器. MultiActionController类可在单个控制器中分别映射多个URL到对应的方法. 所下所示配置 ...

  5. Eclipse 查找

    Eclipse 查找 工作空间中查找 Eclipse 查找对话框中可以允许用户在指定工作空间上使用单词或字母模式来查找文件. 或者你可以在指定项目或在 package explorer 视图上选择好指 ...

  6. oracle ora-01652/oracle表空间

    参考: oracel bigfile tablespace:(推荐) http://blog.chinaunix.net/uid-20779720-id-3078273.html ora-01652解 ...

  7. SharePoint2013导入Excel到列表

    using Microsoft.SharePoint; using System; using System.Collections.Generic; using System.ComponentMo ...

  8. Wireshark使用注意事项

    一直在使用老板的Wireshark,因为4G网络的逐步开通,越来越须要新版Wireshark来解析一些数据包. 在更换了新Wireshark的1.11.3后发现原来能够解析Gb口数据的NSIP不见了 ...

  9. POJ 1815 Friendship(最小割)

    http://poj.org/problem? id=1815 Friendship Time Limit: 2000MS   Memory Limit: 20000K Total Submissio ...

  10. PHP中foreach详细解读

    oreach 语法结构提供了遍历数组的简单方式.foreach 仅能够应用于数组和对象,如果尝试应用于其他数据类型的变量,或者未初始化的变量将发出错误信息.有两种语法: foreach (array_ ...