【USACO3.2】解题报告

信息学奥赛一本通 1446:素数方阵 通过100分 我的主页信息学奥赛一本通(C++版)在线评测系统 1446:素数方阵 【题目描述】 在下面的方格中,每行,每列,以及两条对角线上的数字可以看作是五位的素数。方格中的行按照从左到右的顺序组成一个素数,而列按照从上到下的顺序。两条对角线也是按照从左到右的顺序来组成。 +---+---+---+---+---+ | 1 | 1 | 3 | 5 | 1 | +---+---+---+---+---+ | 3 | 3 | 2 | 0 | 3 | +---+---.. 阅读详情

前言

这次终于没有真香了 q w q qwq qwq
这一章一共有6道题目,其中2道是以前做过的。
题目还是比较简单。恐怕要到第4或5章才开始难一些。
USACO:https://train.usaco.org/usacogate


USACO3.2.1 Factorials

思路:

沙雕模拟题我还能说什么?
把末尾的0弄掉再进行下一个阶乘。

代码:
#include <cstdio>
using namespace std;
typedef long long ll;

ll n,ans=1;

int main()
{
    scanf("%lld",&n);
    for (register ll i=1;i<=n;i++)
    {
        ans*=i;
        while (!(ans%10)) ans/=10;
        ans%=10000000000;
    }
    while (!(ans%10)) ans/=10;
    printf("%lld",ans%10);
    return 0;
}

USACO3.2.3 Stringsobits

思路:

又是一道沙雕题目。
有点类似康拓展开的方法。不解释。

代码:
/*
ID:ssl_zyc2
TASK:kimbits
LANG:C++
*/
#include <cstdio>
#include <cstring>
using namespace std;
typedef long long ll;

ll f[50][50],n,m,k;

int main()
{
    //freopen("kimbits.in","r",stdin);
    //freopen("kimbits.out","w",stdout);
    scanf("%lld%lld%lld",&n,&m,&k);
    f[0][0]=1;
    for (int i=1;i<=n;i++)
        for (int j=0;j<=i;j++)
        {
            if (j) f[i][j]=f[i-1][j]+f[i-1][j-1];
                else f[i][j]=f[i-1][j];
        }
    for (int i=0;i<=n;i++)
        for (int j=1;j<=m;j++)
            f[i][j]+=f[i][j-1];
    for (;n;n--) 
    {
        if (f[n-1][m]<k)
        {
            k-=f[n-1][m];
            putchar(49);
            m--;
        }
        else putchar(48);
    }
    return 0;
}

USACO3.2.4 Spinning Wheels

思路:

又是一道沙雕模拟。
由于在360秒后所有情况都会出现,所以就枚举0 ∼ \sim ∼ 360的时间。
对于任意一个时间,我们计算出每一个孔现在所在的位置,用 v i s [ i ] [ j ] vis[i][j] vis[i][j]表示齿轮 i i i在第 j j j度是否通光。
把 v i s vis vis数组标记好之后就枚举每一度,如果这一度5个轮子同时通光,就输出答案。

代码:
#include <cstdio>
#include <cstring>
using namespace std;

int v[6],sum[6],w[6][6][3];
bool vis[6][400];

bool check()
{
    for (int i=0;i<360;i++)
        if (vis[1][i]&&vis[2][i]&&vis[3][i]&&vis[4][i]&&vis[5][i]) return 1;
    return 0;
}

int main()
{
    for (int i=1;i<=5;i++)
    {
        scanf("%d%d",&v[i],&sum[i]);
        for (int j=1;j<=sum[i];j++)
        {
            scanf("%d%d",&w[i][j][1],&w[i][j][2]);
            for (int l=0;l<=w[i][j][2];l++)
                vis[i][(l+w[i][j][1])%360]=1;
        }
    }
    for (int k=0;k<=360;k++)
    {
        if (check()) return !printf("%d\n",k);
        memset(vis,0,sizeof(vis));
        for (int i=1;i<=5;i++)
            for (int j=1;j<=sum[i];j++)
            {
                w[i][j][1]=(w[i][j][1]+v[i])%360;
                for (int l=0;l<=w[i][j][2];l++)
                    vis[i][(l+w[i][j][1])%360]=1;
            }
    }
    printf("none\n");
    return 0;
}

USACO3.2.5 Feed Ratios

思路:

先 o r z orz orz一波数竞 d a l a o dalao dalao用数竞做。
由于只有3中配料,所以可以考虑 d f s dfs dfs每一种配料的数量。
这样的复杂度是 O ( 10 0 3 ) O(100^{3}) O(1003)。
然后判断一下是否成立就可以了。注意0的情况。

代码:
#include <cstdio>
#define A a[0][1]
#define B a[0][2]
#define C a[0][3]
using namespace std;

int a[4][4],ans[4];
bool flag;

bool check(int x,int y,int z)
{
    int k=-1;
    if (A) k=x/A;
    if (B) k=y/B;
    if (C) k=z/C;
    if (k<0)
    {
        if (!x&&!y&&!z) return 1;
        return 0;
    } 
    else
    {
        if (A*k==x&&B*k==y&&C*k==z&&x>=A&&y>=B&&z>=C) return 1;
        return 0;
    }
}

void dfs(int x,int s1,int s2,int s3)
{
    if (x==4)
    {
        if (check(s1,s2,s3))
        {
            printf("%d %d %d %d\n",ans[1],ans[2],ans[3],s1/a[0][1]);
            flag=1;
        }
        return;
    }
    for (int i=0;i<=100;i++)
    {
        ans[x]=i;
        dfs(x+1,s1+a[x][1]*i,s2+a[x][2]*i,s3+a[x][3]*i);
        if (flag) return;
    }
}

int main()
{
    for (int i=0;i<=3;i++)
        scanf("%d%d%d",&a[i][1],&a[i][2],&a[i][3]);
    dfs(1,0,0,0);
    if (!flag) printf("NONE\n");
    return 0;
}

USACO3.2.6 Magic Squares

题解 https://blog.youkuaiyun.com/SSL_ZYC/article/details/79472430

都不知道多久之前写的了。。。现在看来就是一个非常基础的 b f s bfs bfs。
可以不用 h a s h hash hash的。直接用8维数组搞定。。。


USACO3.2.7 Sweet Butter

题解 https://blog.youkuaiyun.com/SSL_ZYC/article/details/80921478

一个很简单的最短路。


后记

我真的是最菜的

问题 E: 素数方阵(C++算法题) 时间限制: 1.000 Sec 内存限制: 128 MB。 阅读详情

相关推荐

常用经典算法及讲解

常用经典算法及讲解 包括:贪婪算法,分而治之算法,动态规划,回溯,分枝定界 以及八女王问题,卡车更新问题 1. 最小数字子串   2. 邮票面值   3. 字符移动   4. 子集定和问题   5. 素数方阵   6. 全排列问题   7. 移盘子问题   8. N 女王问题   9. 组合问题  10. 电子锁  11. 高精度数加减法  12. 高精度数乘法  13. 高精度数除法(一)  14. 高精度数除法(二)  15. 高精度数阶乘  16. P×S=11...1  17. P×S=987654321...  18. 受控时钟  19. 高精度八进制除法  20. 八数码问题  21. 取火柴游戏  22. 取奇数游戏  23. 最长公共子串 等问题的源码(C语言)

1446:素数方阵 90'代码

#include<iostream> #include<cstdio> #include<cstring> #include<algorithm> #include<math.h> using namespace std; bool qz[100000]; bool hz[100000]; int djx1,djx2; int l[6]...

qq_42552468的博客 1030

算法-素数方阵(信息学奥赛一本通-T1446).rar

算法-素数方阵(信息学奥赛一本通-T1446).rar

USACO3.2.6 香甜的黄油 解题报告

【问题描述】        农夫John发现做出全威斯康辛州最甜的黄油的方法:把糖放在一片牧场上,他知道N(1   农夫John很狡猾。像以前的巴甫洛夫,他知道他可以训练这些奶牛,让它们在听到铃声时去一个特定的牧场。他打算将糖放在那里然后下午发出铃声,以至他可以在晚上挤奶。    农夫John知道每只奶牛都在各自喜欢的牧场(一个牧场不一定只有一头牛)。给出各头牛在的牧场和牧

cqyz_holiday的博客 1696

晶圆测试厂wafer map管理建议

按照Recipe设定bin定义 应有版本管理概念,一般使用最新版本做为活动版本即可 Bin明细中应包含 BinID、BinCode、BinName、BinType、BinColor、Description BinID可使用数字类型 BinCode可参照实际机台的Bin,用于匹配 有些公司也将BinID、BinCode理解为SBin和HBin 即 Software Bin & Hardware Bin 一般也将BinID对应到客户的Bin BinType

凯神做开发 1万+

整车 EOL下线 测试系统介绍

整车下线(EOL)测试专门针对整车进行设计开发,是车企将组装好的整车交付客户前的 最后一道检测工序。EOL 测试针对的是整车下线测试,不同于零部件下线,是整车级别的下线 测试,测试过程关系整车的每个零部件,其测试质量直接影响到整车的质量好坏。因此,整车EOL测试是整车下线必不可少的测试过程.

王小奎的博客 5482

USACO 3.3.2 Shopping Offers解题报告

写在前面:因为之前没写的C++的USACO Training的解题报告太多……所以就不写了,要是想要代码可以联系我:xiedong_1993@foxmail.com 这题就是传说中的五维背包,其实写起来难度不大。但是我写的时候可以说是遇到了重重困难。因为我对C++的掌握还不如Pascal,所以很多东西写的不是很熟。这题有一个很大的问题就在于,最后有用的只有五种物品,但是物品的编号却又很...

diekang6987的博客 272

群晖Video Station海报墙插件更新了!手把手教你用c5h12o5插件搞定豆瓣/TMDB搜刮

本文详细介绍了如何使用c5h12o5插件为群晖Video Station配置高效的海报墙系统。该插件支持豆瓣、TMDB等多数据源并行搜刮,智能优先级设置和本地化优化,解决TMDB API失效问题,提升影视库管理体验。包含安装教程、配置策略和高级使用技巧,适合影视爱好者优化NAS媒体库。

weixin_29250403的博客 265

【USACO2.3】解题报告

前言 本章主要是动态规划,但是其中几道题的方法比较多,我采用了其他的方法。 题目已经开始变难,有几道题还特别值得思考。已经达到普及T3/T4T3/T4T3/T4水平。 USACO:http://train.usaco.org/ 2.3.1.Longest Prefix 博客地址博客地址博客地址 2.3.2.Cow Pedigrees 思路: 这道题还是很有难度的。 很明显是一个DPDPDP,但...

stoorz 380

为Codex添加任务完成提示音:提升开发效率的实用技巧

在自动化脚本开发和模型训练过程中,实时获取任务状态反馈是提升工作效率的关键。通过Hook机制,开发者可以在代码执行的关键节点注入自定义逻辑,实现各种自动化操作。Codex的Hook系统特别适合用于任务完成提醒,其post_execution节点能准确捕获执行结束事件。技术实现上,只需简单配置TOML文件并编写音频播放脚本,就能让系统在任务完成时自动播放提示音。这种声音反馈机制尤其适用于长时间运行的批量任务和模型训练场景,实测可提升30%以上的工作效率。结合动态音效选择和跨平台兼容方案,该技巧还能扩展为桌面通

weixin_26767391的博客 534

HandwrittenMathFormulaRecognition:基于YOLOv8的手写数学公式识别系统

输入:包含手写数学公式的图像(拍摄的板书、作业纸等)输出:对应的数字文本形式的数学公式(如LaTeX格式或文本表达式)标准的手写数学表达式数据集,包含在线轨迹及图片,广泛用于公式识别研究。包含近10万对公式图片及对应的LaTeX标注,适合训练公式识别模型。MathBrush公开手写数学公式图像数据集,含多种书写风格。手写数字与符号数据集(MNIST及其扩展)用于基础数学符号的训练。

YOLO 283

USACO 3.2解题思路报告

Factorials 求n!最后面的非零位。O(n)模拟,为防止溢出,每乘一次都要先除去末尾的零,然后模100000,最后输出最后一位即可。Stringsobits 求出长度为N(开头可以是0)且1的个数不超过L的二进制串中第k小的串。f[i][j]表示长度为i且1的个数不超过j的串的数量; 边界情况:f[i][0]=1(1<=i<=N),f[0][i]=1(1<=i<=L),f[i][j]=

SmallSXJ的博客 483

论文复现《基于最大李雅普诺夫指数的电力系统暂态电压稳定评估方案》

电力系统暂态电压稳定评估方案 摘要 本研究提出了一种基于最大李雅普诺夫指数的电力系统暂态电压稳定评估方法。通过分析相空间中相邻轨迹的收敛或发散特性,该方法能够提前判别系统稳定性。论文首先阐述了暂态电压稳定机理,详细介绍了最大李雅普诺夫指数的计算方法。针对IEEE-39节点系统,建立了仿真模型并获取不同故障场景下的数据。研究开发了完整的评估程序,包括数据预处理、相空间重构、指数计算等模块,并通过与时域仿真结果的对比验证了方法的准确性。实验结果表明,该方法能够快速有效地评估电力系统的暂态电压稳定性,为系统安全运

max500600的博客 187

USACO3.2.6 香甜的黄油 解题报告

【问题描述】   农夫John发现做出全威斯康辛州最甜的黄油的方法:把糖放在一片牧场上,他知道N(1<=N<=500)只奶牛会过来舔它,这样就能做出能卖好价钱的超甜黄油。当然,他将付出额外的费用在奶牛上。   农夫John很狡猾。像以前的巴甫洛夫,他知道他可以训练这些奶牛,让它们在听到铃声时去一个特定的牧场。他打算将糖放在那里然后下午发出铃声,以至他可以在晚上挤奶。   ...

czsupercar的博客 813

YOLOv11低照度增强主干网络PE-YOLO:原理与完整实现教程

编码器部分# 解码器部分self.dec_conv2 = nn.Conv2d(512, 128, 3, padding=1) # 跳跃连接self.dec_conv3 = nn.Conv2d(256, 64, 3, padding=1) # 跳跃连接self.dec_conv4 = nn.Conv2d(128, 32, 3, padding=1) # 跳跃连接# 编码路径# 解码路径(带跳跃连接)

FJN110的博客 724

一文吃透 ABAP RESTful Application Programming Model(RAP):从数据建模与行为,到业务服务暴露,再到服务消费

本文介绍了SAP ABAP统一编程模型RAP的核心架构与实践方法,通过构建完整的ZTRAVEL和ZBOOKING业务对象,演示了从数据建模、行为定义到服务暴露的全流程。文章详细说明了RAP三层架构(数据与行为层、服务提供层、服务消费层)的实现方式,包括CDS视图实体定义、行为定义(BDEF)中的事务能力声明、投影与服务绑定等关键步骤。特别强调了ABAP Cloud环境下的开发限制和最佳实践,如使用GUID和late numbering机制,以及如何通过EML语言操作业务对象。最后提供了完整的代码示例,展示了

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 521

USACO 2.3.1 Longest Prefix 解题报告

今天完全不行啊,USACO只做了一题,今天也只刷了两题,USACO还卡题了 Longest PrefixIOI'96 The structure of some biological objects is represented by the sequence of their constituents denoted by uppercase letters. Biologists are ...

weixin_30825581的博客 131

华为的C语言编程规范.pdf

华为技术有限公司内部技术规范。本规范制定了编写C语言程序的基本原则、规则和建议。从代码的清晰、简洁、可测试、安全、程序效率、可移植各个方面对C语言编程作出了具体指导。

USACO2.3.3 Zero Sum 和为零 解题报告(dfs)

Description 请考虑一个由1到N(N=3, 4, 5 ... 9)的数字组成的递增数列:1 2 3 ... N。 现在请在数列中插入“+”表示加,或者“-”表示减,抑或是“ ”表示空白,来将每一对数字组合在一起(请不在第一个数字前插入符号)。 计算该表达式的结果并注意你是否得到了和为零。 请你写一个程序找出所有产生和为零的长度为N的数列。 Input 单独的一行表示整数N (3 &...

bestsort 731

数学建模模型总结

这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

USACO 2.2.3 Runaround Numbers解题报告

Runaround Numbers Runaround numbers are integers with unique digits, none of which is zero (e.g., 81362) that also have an interesting property, exemplified by this demonstration: If you start at ...

weixin_30878501的博客 120

老版QQ原生表情gif动态

这是老版的QQ表情,不过全是动态的的,Windows照片查看器是不会动的,可以右击用浏览器打开查看,再说一遍是老版的,只是分享给宁愿用老版也要动态的人。

USACO 2.3.3 Zero Sum 解题报告

Zero Sum Consider the sequence of digits from 1 through N (where N=9) in increasing order: 1 2 3 ... N. Now insert either a `+' for addition or a `-' for subtraction or a ` ' [blank] to run the digi...

weixin_30677617的博客 173

USACO Section2.3 Zero Sum 解题报告 【icedream61】

    zerosum解题报告------------------------------------------------------------------------------------------------------------------------------------------------【题目】   给你N。   把1到N依次写出,每相邻两个数字中间加上一个字符,三...

weixin_30555125的博客 242

USACO Section2.3 Controlling Companies 解题报告 【icedream61】

    concom解题报告------------------------------------------------------------------------------------------------------------------------------------------------【题目】   有至多100个公司,每个公司可能会有很多子公司,请你输出每个公司有哪...

weixin_30586257的博客 3271

USACO 2.3.2 Cow Pedigrees 解题报告

分类:DP 作者:ACShiryu 时间:2011-7-17 Cow Pedigrees Silviu Ganceanu -- 2003 Farmer John is considering purchasing a new herd of cows. In this new herd, each mother cow gives birth to two children. The r...

weixin_30305735的博客 98
上一篇: 埃雷萨拉斯寻宝【最短路】
下一篇: 【JZOJ4637】大鱼海棠【博弈论】
stoorz1023
博客等级 码龄9年 101粉丝 595原创
评论 3
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值