牛客网NC18、12-20.8.2-模拟、递推

【牛客网NC18、12-20.8.2-模拟、递推】NC18
题目链接:NC18
题意、输入、输出:
牛客网NC18、12-20.8.2-模拟、递推
文章图片

分析:模拟,从将开始或者其他棋子判断都行
思路:无
代码:

import java.util.*; public class Solution { /** * * @param chessboard string字符串一维数组 * @return string字符串 */ public String playchess (String[] chessboard) { // write code here String[] ch=chessboard; String ans1="Happy"; String ans2="Sad"; for(int i=0; i=0; k--){ if(ch[k].charAt(j)=='j'&&cnt==1)return ans1; if(ch[k].charAt(j)!='.')cnt++; if(cnt==2)break; } cnt=0; for(int k=j+1; k=0; k--){ if(ch[i].charAt(k)=='j'&&cnt==1)return ans1; if(ch[i].charAt(k)!='.')cnt++; if(cnt==2)break; } break; case 'C': for(int k=i+1; k=0; k--){ if(ch[k].charAt(j)!='.'){ if(ch[k].charAt(j)=='j')return ans1; else break; } } for(int k=j+1; k=0; k--){ if(ch[i].charAt(k)!='.'){ if(ch[i].charAt(k)=='j')return ans1; else break; } } break; case 'B': if(i+1=0&&ch[i-1].charAt(j)=='j' ||j+1=0&&ch[i].charAt(j-1)=='j')return ans1; break; case 'J': if(i+1=0&&ch[i-1].charAt(j)=='j' ||j+1=0&&ch[i].charAt(j-1)=='j')return ans1; } } } return ans2; } }

NC12
题目链接:NC12
题意、输入、输出:
牛客网NC18、12-20.8.2-模拟、递推
文章图片

分析:从后往前递推,但取余数我想不明白,
思路:递推(说是dp,但dp就是浪费实干)
代码:
import java.util.*; public class Solution { /** * * @param n int整型 只剩下一只蛋糕的时候是在第n天发生的. * @return int整型 */ static int[] dp=new int[30]; static { dp[0]=1; } public int cakeNumber (int n) { // write code here\ if(dp[n-1]!=0)return dp[n-1]; for(int i=1; i

    推荐阅读