
模拟
99度灰
这个作者很懒,什么都没留下…
展开
-
UVA 573 - The Snail
题目大意:蜗牛从井底往上爬,井高H米,它每天能爬U米,每天夜里下滑D,每天它疲劳,每天能爬的jvli减少第一个天能爬的距离百分之F。每天最少不爬也不会为负数。问他能否爬出井,第几天得出结论。 解题思路:当蜗牛在井中(未爬出井,未下滑至比井底还低位置),则进行循环表示蜗牛每天爬的过程,首先往上爬,此时为这一天蜗牛的最大高度,判断是否超过井高,有则跳出循环,然后下滑,判断是否比井底还低,有则跳出原创 2017-09-06 14:54:11 · 340 阅读 · 0 评论 -
POJ 3087 - Shuffle‘m Up
题目大意:输入s1,s2按图方式合成s12如果s12与输入的目标一致,则完成,否则将下部分给s1,上部分给s2,直到完成,或,确认不能完成目标。输出最少次数,不完成则-1。 解题思路:不太懂为什么要用bfs,直接模拟就好了。。。或者暴力到10000他也会ac ac代码: #include #include using namespace std; int n, m, temp,原创 2017-09-04 19:23:41 · 280 阅读 · 0 评论 -
UVA 133 - The Dole Queue
题目大意:输入n,m,k。一共n个人,面向内,围成一个圈,从其中一个标号为1,逆时针标记为2~n(即1的右边)。A决定从1号开始(包括1),逆时针数第m个人,B决定从n号开始(包括n)顺时针数第k个人。无论是否同一人,将他放出圆圈,继续A上次放走的下一个人的位置,逆时针数第m个人,从B上次放走的下一个人的位置,顺时针数k个人。继续这个步骤,直到全部放走。输出放走的情况。 解题思路:模拟一个数原创 2017-09-03 17:51:25 · 346 阅读 · 0 评论 -
UVA 1225 - Digit Counting
题目大意:求1到m的数位中0~9出现的次数。 解题思路:从一到m循环,求出每位数。 ac代码: #include #include using namespace std; int main() { int n, sum[10], m, temp, temp2; char a[1000]; scanf("%d", &n); while (n--){ scanf("%d原创 2017-09-03 17:42:45 · 231 阅读 · 0 评论 -
UVA 1585 - Score
题目大意:输入n行由OOXX组成的字符串,O代表加分,连续O加分就递增。X代表不加分。输出分数。 解题思路:每个字符串一个循环,进行累加。 ac代码: #include #include using namespace std; int main() { int n, len, sum; char a[1000]; scanf("%d", &n); while (n--)原创 2017-09-03 17:41:42 · 258 阅读 · 0 评论 -
ACdream 1073 - 雷霆战机
题目大意:中文题 解题思路:根据风风的习惯,就是如果有能够升一星的就选能升一星的最低经验球,否则就选经验最大的使用。看懂以后就明白了,先排序,然后用贪心模拟风风的做法。 ac代码: #include #include #include #include using namespace std; int main() { int n, level[4], ex[1005], vis[原创 2017-12-04 21:44:16 · 466 阅读 · 0 评论 -
SPOJ ADAQUEUE - Ada and Queue
题目大意:有四种操作,back输出队尾,去列尾;front输出队首,去队首;reverse颠倒队列;push_back N尾端插入N;toFront N首端插入N。如果操作失败,也就是队空时,希望输出队首队尾,就输出"No job for Ada?" 解题思路:用双向队列,就是简单的调用函数了,颠倒时,也由一个变量标记,使正常接下来的操作尾变头,头变尾。或者模拟,队首队尾分别标记,一个方向变量原创 2017-12-04 22:06:05 · 408 阅读 · 0 评论