USACO(含training section)水题合集[5/未完待续]
(1) USACO2.1 Ordered Fractions
枚举 排序即可,注意1/1
- #include<iostream>
- #include<cstdio>
- #include<algorithm>
- #include<cstring>
- using namespace std;
- const int N=,L=1e5;
- struct fr{
- int a,b;
- fr(int q=,int w=):a(q),b(w){}
- }f[L];
- int n,cnt=;
- inline bool cmp(fr &x,fr &y){
- return (double)x.a/x.b<(double)y.a/y.b;
- }
- inline int gcd(int a,int b){
- return b==?a:gcd(b,a%b);
- }
- int main(){
- cin>>n;
- for(int i=;i<=n;i++)
- for(int j=i+;j<=n;j++)
- if(gcd(i,j)==)
- f[++cnt]=fr(i,j);
- sort(f+,f++cnt,cmp);
- for(int i=;i<=cnt;i++)
- printf("%d/%d\n",f[i].a,f[i].b);
- cout<<"1/1";
- }
(2) USACO1.5Number Triangles
基础DP
- #include<iostream>
- #include<cstring>
- #include<algorithm>
- #include<cstdio>
- using namespace std;
- int r,d[][],a[][];
- int dp(int i,int j){
- if(d[i][j]>=) return d[i][j];
- return d[i][j]=a[i][j]+(i==r?:max(dp(i+,j),dp(i+,j+)));
- }
- int main(){
- scanf("%d",&r);//cin>>r;
- memset(d,-,sizeof(d));
- for(int i=;i<=r;i++)
- for(int j=;j<=i;j++) scanf("%d",&a[i][j]);//cin>>a[i][j];
- int ans=-;
- cout<<dp (,);
- }
(3) USACO1.2 Transformations
模拟
- #include <iostream>
- using namespace std;
- const int N=;
- int n;
- char a[N][N],r[N][N],t[N][N];
- bool ro90(char a[N][N]){
- for(int i=;i<=n;i++)
- for(int j=;j<=n;j++)
- if(a[i][j]!=r[j][n-i+]) return false;
- return true;
- }
- bool ro180(char a[N][N]){
- for(int i=;i<=n;i++)
- for(int j=;j<=n;j++)
- if(a[i][j]!=r[n-i+][n-j+]) return false;
- return true;
- }
- bool ro270(char a[N][N]){
- for(int i=;i<=n;i++)
- for(int j=;j<=n;j++)
- if(a[i][j]!=r[n-j+][i]) return false;
- return true;
- }
- void img(char a[N][N],char t[N][N]){
- for(int i=;i<=n;i++)
- for(int j=;j<=n;j++)
- t[i][n-j+]=a[i][j];
- }
- bool check(char r[N][N],char t[N][N]){
- for(int i=;i<=n;i++)
- for(int j=;j<=n;j++)
- if(r[i][j]!=t[i][j]) return false;
- return true;
- }
- int solve(){
- if(ro90(a)) return ;
- if(ro180(a)) return ;
- if(ro270(a)) return ;
- img(a,t);
- if(check(r,t)) return ;
- if(ro90(t)) return ;
- if(ro180(t)) return ;
- if(ro270(t)) return ;
- if(check(r,t)) return ;
- return ;
- }
- int main(int argc, const char * argv[]) {
- cin>>n;
- for(int i=;i<=n;i++)
- for(int j=;j<=n;j++)cin>>a[i][j];
- for(int i=;i<=n;i++)
- for(int j=;j<=n;j++)cin>>r[i][j];
- cout<<solve();
- }
(4) USACO1.4Mother's Milk
dfs,六种倒水方法,fill简化
- #include<iostream>
- #include<cstdio>
- #include<cstring>
- #include<algorithm>
- using namespace std;
- const int N=;
- int vis[N][N][N];
- int l[],ta,tb,tc;
- int ans[N];
- inline void fill(int &a,int &b,int num){
- int tmp=min(l[num]-a,b);
- a+=tmp;
- b-=tmp;
- }
- void dfs(int a,int b,int c){//printf("%d %d %d\n",a,b,c);
- if(vis[a][b][c]) return;
- if(a==) ans[c]=true;
- vis[a][b][c]=;
- ta=a;tb=b;tc=c;//
- fill(ta,tb,);dfs(ta,tb,tc);
- ta=a;tb=b;tc=c;//
- fill(ta,tc,);dfs(ta,tb,tc);
- ta=a;tb=b;tc=c;//
- fill(tb,ta,);dfs(ta,tb,tc);
- ta=a;tb=b;tc=c;//
- fill(tb,tc,);dfs(ta,tb,tc);
- ta=a;tb=b;tc=c;//
- fill(tc,ta,);dfs(ta,tb,tc);
- ta=a;tb=b;tc=c;//
- fill(tc,tb,);dfs(ta,tb,tc);
- }
- int main(){
- cin>>l[]>>l[]>>l[];
- dfs(,,l[]);
- for(int i=;i<=l[];i++) if(ans[i]) cout<<i<<" ";
- }
(5)USACO迷宫
裸DFS
- #include<iostream>
- using namespace std;
- int n,m,t,sx,sy,fx,fy,ans=;int x,y;
- int e[][],vis[][],dx[]={-,,,},dy[]={,,,-};
- void dfs(int x,int y){
- if(x<||y<||x>n||y>m) return;
- if(e[x][y]) return;
- if(x==fx&&y==fy) {ans++;return;}
- if(vis[x][y]) return;
- vis[x][y]=;
- for(int i=;i<;i++) dfs(x+dx[i],y+dy[i]);
- vis[x][y]=;
- }
- int main(){
- cin>>n>>m>>t>>sx>>sy>>fx>>fy;
- for(int i=;i<t;i++) {cin>>x>>y;e[x][y]=;}
- dfs(sx,sy);
- cout<<ans;
- }
USACO(含training section)水题合集[5/未完待续]的更多相关文章
- NOIP水题合集[3/未完待续]
NOIP2008pj传球游戏 题目描述 上体育课的时候,小蛮的老师经常带着同学们一起做游戏.这次,老师带着同学们一起做传球游戏. 游戏规则是这样的:n个同学站成一个圆圈,其中的一个同学手里拿着一个球, ...
- DP+贪心水题合集_C++
本文含有原创题,涉及版权利益问题,严禁转载,违者追究法律责任 本次是最后一篇免费的考试题解,以后的考试题目以及题解将会以付费的方式阅读,题目质量可以拿本次作为参考 本来半个月前就已经搞得差不多了,然后 ...
- FCRA题库及答案(未完待续)
一.FCRA-入门基础(23) 1.FineReport中普通模板总共有5种不同的预览模式:分页预览.填报预览.新填报预览.数据分析.移动端预览 决策报表下为表单预览.移动端预览 2.FineRepo ...
- 记录一下第一次在CodeForces供题的事(未完待续)
3月11日 因为想出题而开始打比赛上分 (Rating 1727) (期间最低掉到 1669) 6月4日凌晨 上分,有了权限 (Rating 2141) 6月4-6日 出了七道题 6月8-12日 又出 ...
- 秋招如何抱佛脚?2022最新大厂Java面试真题合集(附答案
2022秋招眼看着就要来了,但是离谱的是,很多同学最近才想起来还有秋招这回事,所以纷纷临时抱佛脚,问我有没有什么快速磨枪的方法, 我的回答是:有! 说起来,临阵磨枪没有比背八股文更靠谱的了,很多人对这 ...
- Codeforces Round #197 (Div. 2) (A、B、C、D、E五题合集)
A. Helpful Maths 题目大意 给一个连加计算式,只包含数字 1.2.3,要求重新排序,使得连加的数字从小到大 做法分析 把所有的数字记录下来,从小到大排序输出即可 参考代码 #inclu ...
- Codeforces Round #195 A B C 三题合集 (Div. 2)
A 题 Vasily the Bear and Triangle 题目大意 一个等腰直角三角形 ABC,角 ACB 是直角,AC=BC,点 C 在原点,让确定 A 和 B 的坐标,使得三角形包含一个矩 ...
- 【牛客 错题集】Linux系统方面错题合集
前言:牛客Linux322道全部刷完,有些题目较老,甚至考核5系统,现在7都出来了几年了 = = 还有些题目解析的很好部分也摘录了进来.很多涉及嵌入式开发的选择题同样的摘录的作为了解使用 ------ ...
- noip普及组考纲+样题合集——初级篇(OIer必看)
很明显我是想发提高组合集的.普及组考纲……用发么. 当然如果你想看的话也可以,就一点点: 递归.排序…… 很明显上面那都不是重点.普及组只要掌握搜索.二分.单调队列.数学.随机化等等,一等奖没问题的, ...
随机推荐
- 【position也可以很复杂】当弹出层遇上了鼠标定位(下)
前言 接着昨天的内容写,为了保证内容连续性,这里还是把昨天的内容拷了过来. 请用现代浏览器测试 引出问题 有图有真相,我们来看一个智联招聘里面经常出现的图层: 他这个是没有什么问题的,我们来简单看看其 ...
- 怎么把多个GridView和Repeater导入到word或者excel中
最近开发网上商城有发现我们会涉及到订单打印的问题,本来想到直接显示打印即可但是考虑还得下载到本地,最后只有直接选择控件按流方式输出. 导入到word中代码如下: protected void Butt ...
- JavaScript基础19——innerHTML示例
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...
- [转]搭建Maven私服
在开发过程中,有时候会使用到公司内部的一些开发包,显然把这些包放在外部是不合适的.另外,由于项目一直在开发中,这些内部的依赖可能也在不断的更新.可以通过搭建公司内部的Maven服务器,将第三方和内部的 ...
- VirtualBox & Kaili Linux 环境搭建
勾选启用PAE/NX 勾选固态驱动器 网卡设置 [添加源] 2016.1月版添加源 cat << EOF > /etc/apt/sources.list deb http://htt ...
- Projects\Portal_Content\Indexer\CiFiles文件夹下文件占用磁盘空间过大问题。
C:\Program Files\Microsoft Office Servers\12.0\Data\Office Server\Applications\9765757d-15ee-432c-94 ...
- Android之Splash页面
在继上个任务没有解决之后,心灰意冷之后,现在的我在跟着视频学习开发一个手机卫士的软件.在写自己的笔记之前,我先来展示一下我的结果. 下面我来总结一下我跟随视频学习到的知识点: 一.代码的组织结构: 1 ...
- iOS 多线程 浅述
什么是进程? 进程是指在系统中正在运行的一个应用程序. 每个进程之间是独立的,每个进程均运行在其专用且受保护的内存空间内. 什么是线程? 1个进程要想执行任务,必须得有线程(每1个进程至少要有1条线程 ...
- iOS中的UI
• 不管你是学习android开发还是iOS开发• 都建议先学习UI,原因如下:UI是app的根基:⼀一个app应该是先有UI界⾯面,然后在UI的基础上增加实⽤用功能 UI相对简单易学:UI普遍是学 ...
- jQuery和ExtJS的timeOut超时问题和event事件处理问题
对jQuery来说,超时可以直接设置timeout参数,并在error事件中捕获第二个参数,如果是“timeout”则表明捕获了超时事件,非常清楚. 例子: $.ajax({ type ...