NOIP2014自測(晚自習兩節+上午兩節 共5個小時)

昨天剛剛考完試然后就翹晚自習跟今天上午兩節課的語文和英語做做noip2014的題目。然后去評測了一番。首先day1day2的t1基本都是模擬,一看就出思路那種,直接ac掉。代碼如下

day1t1:#include<iostream>
#define maxn 209
using namespace std;
int map[5][5] =?
{{0, 0, 1, 1, 0},
?{1, 0, 0, 1, 0},
? {0, 1, 0, 0, 1},?
? {0, 0, 1, 0, 1},?
? {1, 1, 0, 0, 0}};
int n,t1,t2;
int a[maxn], b[maxn];
int sum1,sum2;
int m1,m2;?
int main()
{ ?
? ? cin>>n>>t1>>t2;
? ? for(int i = 0; i < t1; i++)?
cin>>a[i];
? ? for(int i = 0; i < t2; i++)
? ? cin>>b[i];
? ? while(n--)?
{
? ? ? ? sum1+=map[a[m1]][b[m2]];
? ? ? ? sum2+=map[b[m2]][a[m1]];
? ? ? ? if((++m1) >= t1)
?? ? ? m1-=t1;
? ? ? ? if((++m2) >= t2)
?? ? ? m2-=t2;
? ? }
? ? cout<<sum1<<" "<<sum2<<endl;
? ? return 0;
}
用一個二維數組模擬這幾種情況的得分。然后用思路論好了,比較簡單。
day2t1:
這個題我真的非常懷疑是否為普及組的題,一個窮舉模擬然后就過了。本以為要用貪心,我懶得找bug所以直接提交結果就過了。666mdzz。
代碼:#include<iostream>
using namespace std;
int n,maxn,sum,d;
int x[22],y[22],s[22],f[130][130];
int main()
{
? ? cin>>d>>n;
? ? for (int i=0;i<n;i++)
? ? cin>>x[i]>>y[i]>>s[i];
? ? for (int i=0;i<129;i++)
? ? ?for (int j=0;j<129;j++)
? ? ? ?for (int k=0;k<n;k++)
? ? ? ? if (x[k]>=i-d && x[k]<=i+d && y[k]>=j-d && y[k]<=j+d)
?? ? ?f[i][j]+=s[k];
? ? for (int i=0;i<129;i++)
? ? ? for (int j=0;j<129;j++)
? ? ? ? ? ? if (f[i][j]>maxn)
?? ?maxn=f[i][j];
?? ?
? ? for (int i=0;i<129;i++)
? ? ? ?for (int j=0;j<129;j++)
? ? ? ? ? ? ?if (f[i][j]==maxn)
?? sum++;
? ? cout<<sum<<" "<<maxn<<endl;
? ? return 0;
}
day1t2:可以有點難度了,求聯合全值,嗯,我看第一眼的時候是個圖論的題,就是窮舉點然后用幾個算法優化一下,floyed應該能過3個點吧,dijstra能過7個吧。自己用筆算的復雜度。呵呵……。之后我就敲了dijstra代碼然后硬生生的過了8個點。兩個點tle。算了,不使spfa了,我就直接看題解了。結果發現這是一道大水題。水到無極限的數學題。媽的我就是大牛們口中的二逼青年。具體看題解-_-。然后找這他們的思路打了代碼。嗯:卡時間了,一樣的代碼交了三次才ac。代碼:
#include<iostream>
#define maxn 200001
using namespace std;
struct Edge
{
? ? int first;
int next;
}edge[maxn];
long long s[maxn];
int w[maxn];
int max1[maxn],max2[maxn];
void sphdehanshu(int x,int &max1,int ?&max2)
{
? ? if(x>max1){max2=max1;max1=x;}
? ? else
? ? if(x>max2) max2=x; ? ?
}
int n,sum1,sum2,first,next;
int main()
{
? cin>>n;
? for(int i=1;i<=n-1;i++) cin>>edge[i].first>>edge[i].next;
? for(int i=1;i<=n;i++) cin>>w[i];
? for(int i=1;i<=n-1;i++)
? {
?? first=edge[i].first;
?? next=edge[i].next;
?? s[first]=s[first]+w[next];
?? s[next]=s[next]+w[first];
?? sphdehanshu(w[next],max1[first],max2[first]);
? ? sphdehanshu(w[first],max1[next],max2[next]);
? }
? ? for(int i=1;i<=n;i++)?
? ? if(max1[i]*max2[i]>sum1)sum1=max1[i]*max2[i];
? ? ?for(int i=1;i<=n-1;i++)
? ? {
? ? ? ? first=edge[i].first;
next=edge[i].next;
? ? ? ? sum2=(sum2+(s[first]-w[next])*w[next] % 10007) % 10007;
? ? ? ? sum2=(sum2+(s[next]-w[first])*w[first] % 10007) % 10007;
? ? }
? ? cout<<sum1<<" "<<sum2<<endl;
? ? return 0;
}
day2t2:這個題就是道圖論唄,先倒著搜一遍去掉無關點,然后在用堆優化的dijstra或者bfs找最短路好了。然后呢本以為會ac結果輸出的時候把endl打在前面,導致一片WA聲。改過來ac掉。
代碼:#include<cstdio>
#include<iostream>
#include<cstring>
#include<queue>
using namespace std;
int n,m,x,y,s,t,sum,cnt;
int head[20010],nxt[500000],to[500000],dis[20010];
int nhead[20010],nnxt[500000],nto[500000],ans;
bool dvis[20010],fky[20010],vis[20010];
queue <int> dl,js;
void cr(int x,int y)
{
? ? sum++;
? ? nxt[sum] = head[x];
? ? head[x] = sum;
? ? to[sum] = y;
}
void ncr(int x,int y)
{
? ? cnt++;
? ? nnxt[cnt] = nhead[x];
? ? nhead[x] = cnt;
? ? nto[cnt] = y;
}
void dfs(int x)
{
? ? for (int tp = nhead[x];tp;tp = nnxt[tp])
? ? {
? ? ? ?if (!dvis[nto[tp]])?
? ? ? ? {
? ? ? ? ? ? dvis[nto[tp]] = true;
? ? ? ? ? ? dfs(nto[tp]);
? ? ? ? } ? ? ?
? ? }
}
void ndfs(int x)
?
{
? ? for (int tp = nhead[x];tp;tp = nnxt[tp])
? ? {
? ? ? ? if (!fky[nto[tp]])
? ? ? ? {
? ? ? ? ? ? fky[nto[tp]] = true; ? ??
? ? ? ? ? ? ?ndfs(nto[tp]);
? ? ? ? }
? ? }
}
void bfs(int x)
{
? ? dl.push(x);
? ? js.push(0);
? ? vis[x] = true;
? ? while (!dl.empty())
? ? {
? ? ? ? if (dl.front() == t)
? ? ? ? {
? ? ? ? ans = js.front(); ? ??
? ? ? ? ? ? return;
? ? ? ? }
? ? ? ? for (int tp = head[dl.front()];tp;tp = nxt[tp])
? ? ? ? {
? ? ? ? ? ? if (!fky[to[tp]] && !vis[to[tp]])
? ? ? ? ? ? { ? ? ?
? ? ? ? ? ? ? ? dl.push(to[tp]);
? ? ? ? ? ? ? ? js.push(js.front()+1);
? ? ? ? ? ? ? ? vis[to[tp]] = true;
? ? ? ? ? ? }
? ? ? ? }
? ? ? ? dl.pop();
? ? ? ? js.pop();
? ? }
}
int main()
{
? ? cin>>n>>m;
? ? for (int i = 1;i <= m;i++)
? ? {
? ? ? ? cin>>x>>y;
? ? ? ? cr(x,y);
? ? ? ? ncr(y,x);
? ? }
? ? cin>>s>>t;
? ? dvis[t] = true;
? ? dfs(t);
? ? for (int i = 1;i <= n;i++)
? ? {
? ? ? ? if (!dvis[i]) ndfs(i);
? ? }
? ? bfs(s);
? ? if (ans || s == t)
cout<<ans<<endl;
else
? ? cout<<"-1"<<endl;
? ? return 0;
}
?
day1t3:哦呵呵,直接模擬超時了,我感覺是這樣的。于是寫了個背包,嗯不錯過了3個點。最后抄了題解把本題ac掉了。沒想到它就是個背包題。早知道就認真寫寫了。
代碼:#include <cstring>
#include <cstdio>
#include<iostream>
int n,m,k,i,j,s,u,v,ans;
int f[10002][1002];
int top[10002],bot[10002];
int up[10002],down[10002];
int min(int a,int b) {return(a<b?a:b);}
int main()
{
? ? scanf("%d%d%d",&n,&m,&k);
? ? for (i=0;i<n;++i)
? ? ? ? scanf("%d%d",&up[i],&down[i]);
? ? for (i=0;i<=n;++i) top[i]=m+1;
? ? for (i=1;i<=k;++i)
? ? {
? ? ? ? scanf("%d%d%d",&s,&u,&v);
? ? ? ? bot[s]=u;
? ? ? ? top[s]=v;
? ? }
? ? memset(f,0x3f,sizeof(f));
? ? for (i=1;i<=m;++i) f[0][i]=0;
? ? for (i=1;i<=n;++i)
? ? {
? ? ? ? for (j=1;j<=m;++j)
? ? ? ? {
? ? ? ? ? ? u=j-up[i-1];
? ? ? ? ? ? if (u>bot[i-1] && u<top[i-1]) f[i][j]=min(f[i-1][u]+1,f[i][j]);
? ? ? ? ? ? if (u>0) f[i][j]=min(f[i][u]+1,f[i][j]);
? ? ? ? }
? ? ? ? for (j=m;j>=m-up[i-1] && j>=1;--j)
? ? ? ? {
? ? ? ? ? ? f[i][m]=min(f[i][m],f[i][j]+1);
? ? ? ? ? ? if (j>bot[i-1] && j<top[i-1]) f[i][m]=min(f[i-1][j]+1,f[i][m]);
? ? ? ? }
? ? ? ? for (j=bot[i]+1;j<top[i];++j)
? ? ? ? {
? ? ? ? ? ? u=j+down[i-1];
? ? ? ? ? ? if (u>bot[i-1] && u<top[i-1])
? ? ? ? ? ? f[i][j]=min(f[i-1][u],f[i][j]);
? ? ? ? }
? ? }
? ? ans=0x3f3f3f3f;
? ? for (i=bot[n]+1;i<top[n];++i) ans=min(ans,f[n][i]);
? ? if (ans<0x3f3f3f3f) printf("1\n%d",ans);
? ? else
? ? {
? ? ? ? ans=k;
? ? ? ? for (i=n-1;i>=0;--i)
? ? ? ? {
? ? ? ? ? ? if (top[i]<=m)
? ? ? ? ? ? {
? ? ? ? ? ? ? ? ans--;
? ? ? ? ? ? ? ? for (j=bot[i]+1;j<top[i];++j)
? ? ? ? ? ? ? ? if (f[i][j]<0x3f3f3f3f)
? ? ? ? ? ? ? ? {
? ? ? ? ? ? ? ? ? ? ++ans;
? ? ? ? ? ? ? ? ? ? printf("0\n%d",ans);
? ? ? ? ? ? ? ? ? ? return 0;
? ? ? ? ? ? ? ? }
? ? ? ? ? ? }
? ? ? ? }
? ? ? ? printf("0\n0");
? ? }
}
day2t3:解方程
比較呵呵了,看一眼沒思路,嗯打樣例數據。一片WA聲想起。
看題解似乎是道數論的題目。去模……去***的。我數學拋物線還沒好好學,跟我扯這些。。。
然后Candy?跟我說這道模擬會拿30分,高精50分。好吧。早知道我就做做了。
總的來說,第一遍ac的總分=100+100+80+30+0+0=310分
考試認真一點就再加上方正心態把最后一問寫個模擬就可以 100+100+80+30+100+30=460分。
后悔也沒用了,吃一斬長一智。

轉載于:https://www.cnblogs.com/srpihot/p/6305469.html

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/371639.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/371639.shtml
英文地址,請注明出處:http://en.pswp.cn/news/371639.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

您在eXo平臺上的第一個Juzu Portlet

菊珠是佛教的佛珠。 一句話&#xff0c;我相信您已經學到了什么&#xff0c;印象深刻嗎&#xff1f; 好的&#xff0c;我在這里不談論佛教。 Juzu還是一個用于快速開發Portlet&#xff08;以及即將推出的獨立應用程序&#xff09;的新框架。 您可以在Juzu網站上找到所需的所有…

Spring注入方式及注解配置

一&#xff1a;基于xml的DI&#xff08;Dependency Injection&#xff09; 注入類型&#xff1a; 定義學生Student實體類和小汽車Car實體類&#xff1a;進行封裝和生成ToString(),并自定義屬性Car Student 123456789101112131415161718192021222324252627282930313233343536373…

java 切面 不執行,解決springboot的aop切面不起作用問題(失效的排查)

檢查下springboot的啟動類是否開啟掃描springbootapplicationcomponentscan(basepackages {"com.zhangpu.springboot"})另外springboot默認開啟的enableaspectjautoproxy為true如果不放心可以增加&#xff1a;enableaspectjautoproxy(proxytargetclasstrue)第二種可…

修改readonly屬性的值

一般情況下&#xff0c;readonly屬性的值是無法修改的&#xff0c;但可以通過特殊方式修改。定義一個student的類&#xff0c;其中name屬性為readonly類型的變量 interface JFStudent : NSObjectproperty(nonatomic,copy,readonly) NSString *hisName;property(nonatomic,copy)…

VisualVM:通過SSH監視遠程JVM(是否為JMX)

VisualVM是用于監視JVM&#xff08;5.0&#xff09;的有關內存使用情況&#xff0c;線程&#xff0c;GC&#xff0c;MBeans等的出色工具。讓我們看看如何通過SSH使用它來監視&#xff08;甚至使用JMX對其進行采樣&#xff0c;對帶有JMX的遠程JVM進行監視&#xff09;它。 這篇文…

h5 php js實驗總結,H5學習_番外篇_PHP數據庫操作

1. 文件操作1.1 打開關閉文件fopen()resource fopen ( string filename, string mode [, bool use_include_path [, resource zcontext]] )?fopen()函數將resource綁定到一個流或句柄。綁定之后&#xff0c;腳本就可以通過句柄與此資源交互;例1:以只讀方式打開一個位于本地服務…

ReactNative開發環境

此內容根據徐贏老師的文檔整理后寫處 原版地址&#xff1a;https://tuomaxu.gitbooks.io/reactnative/content/ ReactNative是跨平開發的解決方案&#xff0c;在開發平臺的選擇上&#xff0c;mac平臺和win平臺都可以。 所需要工具如下&#xff1a; 1&#xff0c;Nodejs環境 2&a…

Python自動化開發 - 字符串, 列表, 元組, 字典和和文件操作

一、字符串特性&#xff1a;字符串本身不可修改&#xff0c;除非字符串變量重新賦值。Python3中所有字符串都是Unicode字符串&#xff0c;支持中文。 >>> name "Jonathan" >>> name "Jonathan" "Ni" >>>print(na…

shiro java配置,InI 配置 - 跟我學 Apache Shiro_教程_Java開發社區

INI 配置之前章節我們已經接觸過一些 INI 配置規則了&#xff0c;如果大家使用過如 Spring 之類的 IoC/DI 容器的話&#xff0c;Shiro 提供的 INI 配置也是非常類似的&#xff0c;即可以理解為是一個 IoC/DI 容器&#xff0c;但是區別在于它從一個根對象 securityManager 開始。…

在Spring容器外部連接對象依賴項

有幾種有趣的方法可以設置在Spring容器外部實例化的對象的屬性和依賴關系。 用例首先&#xff0c;為什么我們需要在Spring容器之外進行依賴注入–我知道三個用例&#xff0c;其中我實例化了Spring容器之外的對象并需要注入依賴。 首先考慮使用Spring TaskExecutor執行一系列任…

前端學習路線匯總

https://123.w3cschool.cn/plk2fihttps://www.w3cschool.cn/nodejs/nodejs-global-object.htmlnode.js轉載于:https://www.cnblogs.com/sxz2008/p/7238773.html

MediaInfo源代碼分析 1:整體結構

博客地址&#xff1a;http://blog.csdn.net/leixiaohua1020/article/details/12016231 MediaInfo源代碼分析系列文章列表&#xff1a; MediaInfo源代碼分析 1&#xff1a;整體結構MediaInfo源代碼分析 2&#xff1a;API函數MediaInfo源代碼分析 3&#xff1a;Open()函數MediaI…

測試RESTful服務的客戶端

開發使用RESTful Web API的應用程序可能意味著開發服務器和客戶端。 為服務器端編寫集成測試可以像使用Arquillian來啟動服務器一樣容易&#xff0c;并且可以通過REST確保測試服務是否按預期工作。 問題是如何測試客戶端。 在本文中&#xff0c;我們將了解如何使用模擬來測試客…

linux mysql誤刪,linux下MySQL安裝與刪除?(Ubuntu)

1、MySQL安裝A)MySQL安裝&#xff1a; sudo apt-get install mysql-server mysql-clientB)啟動/停止MySQL服務&#xff1a;MySQL 在安裝以后&#xff0c;MySQL 就已經啟動&#xff1b;如果需要手動啟動或停止則如下操作&#xff1a;手動啟動服務&#xff1a; sudo start mysql手…

對多態的理解例子

public class A {public String show(D obj) {return ("A and D");}public String show(A obj) {return ("A and A");} }class B extends A{public String show(B obj){ //重載return ("B and B");}public String show(A obj){ //重寫show(A obj…

【Java每日一題】20170120

20170119問題解析請點擊今日問題下方的“【Java每日一題】20170120”查看&#xff08;問題解析在公眾號首發&#xff0c;公眾號ID&#xff1a;weknow619&#xff09; package Jan2017; import java.util.Arrays; import java.util.List; public class Ques0120 { publ…

使用NoSQL實現實體服務–第2部分:合同優先

現在該開始使用NoSQL項目對SOA實體服務進行編碼了&#xff0c;并且正如我所承諾的&#xff0c;我將從Web服務的合同開始。 看一下本系列的第1部分 。 這種從Web服務合同定義開始的技術是面向服務的體系結構實現的“合同優先”方法的核心&#xff0c;并具有許多技術優勢&#xf…

php hugepage,【原創】解決Redis啟動報錯:Transparent Huge Pages (THP) support enabled in your kernel...

問題背景Redis啟動報錯&#xff1a;WARNING you have Transparent Huge Pages (THP) support enabled in your kernel.This will create latency and memory usage issues with Redis.To fix this issue run the command echo never > /sys/kernel/mm/transparent_hugepage/…

hibernate cascade的真正含義

hibernate cascade 是 OneToOne OneToMany ManyToOne ManyToMany等注解的屬性&#xff0c;表示級聯操作。 /*** (Optional) The operations that must be cascaded to* the target of the association.** <p> By default no operations are cascaded.*/CascadeType[] cas…

射線碰撞檢測

在我們的游戲開發過程中&#xff0c;有一個很重要的工作就是進行碰撞檢測。例如在射擊游戲中子彈是否擊中敵人&#xff0c;在RPG游戲中是否撿到裝備等等。在進行碰撞檢測時&#xff0c;我們最常用的工具就是射線&#xff0c;Unity 3D的物理引擎也為我們提供了射線類以及相關的函…