前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >[笔试强训day04]

[笔试强训day04]

作者头像
南桥
发布2024-04-25 16:49:51
1030
发布2024-04-25 16:49:51
举报
文章被收录于专栏:南桥谈编程南桥谈编程
文章目录

  • WY22 Fibonacci数列
  • NC242 单词搜索
  • BC140 杨辉三角

WY22 Fibonacci数列

WY22 Fibonacci数列

在这里插入图片描述
在这里插入图片描述
代码语言:javascript
复制
#include<iostream>
#include<cmath>

using namespace std;

int n;

int main()
{
    cin>>n;
    int a=0,b=1,c=1;
    while(n>c)
    {
        a=b;
        b=c;
        c=a+b;
    }

    int ans=min(n-b,c-n);
    cout<<ans<<endl;

    return 0;
}

NC242 单词搜索

NC242 单词搜索

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
代码语言:javascript
复制
#include <utility>
#include <vector>
class Solution {
    int m, n;
    int dy[4] = {1, -1, 0, 0}, dx[4] = {0, 0, 1, -1};
    bool vis[105][105] = {0};
  public:
    /**
     * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
     *
     *
     * @param board string字符串vector
     * @param word string字符串
     * @return bool布尔型
     */
    bool exist(vector<string>& board, string word) {
        m = board.size(), n = board[0].size();
        for (int i = 0; i < m; i++) {
            for (int j = 0; j < n; j++) {
                if (board[i][j] == word[0]) {
                    if (dfs(board, i, j, word, 0)) return true;
                }
            }
        }
        return false;
    }

    bool dfs(vector<string>& board, int i, int j, string& word, int pos) {
        if (pos == word.size() - 1) return true;
        vis[i][j] = true;
        for (int k = 0; k < 4; k++) {
            int a = i + dx[k], b = j + dy[k];
            if (a >= 0 && a < m && b >= 0 && b < n && !vis[a][b] &&
                    board[a][b] == word[pos + 1]) {
                if (dfs(board, a, b, word, pos + 1)) return true;
            }
        }
        vis[i][j] = false;
        return false;
    }
};

BC140 杨辉三角

BC140 杨辉三角

在这里插入图片描述
在这里插入图片描述
代码语言:javascript
复制
#include<iostream>
#include<cstdio>

using namespace std;

int n,dp[35][35];

int main()
{
    cin>>n;
    dp[1][1]=1;

    for(int i=2;i<=n;i++)
    {
        for(int j=1;j<=i;j++)
        {
            dp[i][j]=dp[i-1][j-1]+dp[i-1][j];
        }
    }

    for(int i=1;i<=n;i++)
    {
        for(int j=1;j<=i;j++)
        {
            printf("%5d",dp[i][j]);
        }
        printf("\n");
    }

    return 0;
}
本文参与?腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2024-04-23,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客?前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与?腾讯云自媒体分享计划? ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 文章目录
  • WY22 Fibonacci数列
  • NC242 单词搜索
  • BC140 杨辉三角
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
http://www.vxiaotou.com