summary:本次比賽共6題,a題為簽到題 ,ce為中等題,bd為偏難題 ,f為防ak題。總體對於新生來說偏難了,過題人數與出題人預期有一定差距。
a.uncle bird』s greetings
直接暴力判斷hello即可
#include
#include
#include
using
namespace
std;
int main()
printf("%d\n", ans);
}return
0;}
b.uncle bird』s maths problem
排序不等式:順序乘積和最大,逆序乘積和最小。
將bi取倒數得1/bi後,其實就把除法換成了乘法,逆序乘積和最小,所以分別排序後倒序相乘就行了。
#include
#include
#include
using
namespace
std;
double a[10005];
double b[10005];
int n;
int main()
sort(a+1, a+1+n);
sort(b+1, b+1+n);
double ans=0;
for(int i=1;i<=n;i++)
printf("%.3f\n", ans);
}return
0;}
c.uncle bird』s first contest
這題其實如題面所說是出題人第一次打hdu新生賽做到的題,乙個簡單的dp。
記dp[i]為i個人分組的方案數。顯然dp[1]=1,dp[2]=2,dp[3]=5。i>=4時,考慮最後乙個人,他可以一人一隊,對方案數的貢獻是dp[i-1];也可以和另外i-1人中的一人組隊,貢獻是c(i-1,1)xdp[i-2];還可以和另外i-1人中的兩人組隊,貢獻是c(i-1,2)xdp[i-3],所以dp[i]=dp[i-1]+c(i-1,1)xdp[i-2]+c(i-1,2)xdp[i-3]。注意資料量會爆int,要用long long。
#include
#include
#include
using
namespace
std;
long
long a[30];
int main()
}
d.uncle bird』s manhattan distance
這題是關於manhattan distance的乙個性質。考慮取乙個在所有點左下角的點為基準a(x0,y0),那麼對於滿足x1<=x2和y1<=y2的點對b(x1,y1)和c(x2,y2),bc(曼哈頓距離,下同)=ac-ab。同理取右下角基準點,可以處理x1<=x2和y1>=y2的的點對的距離。這樣,將兩兩點之間曼哈頓距離轉換為到基準點的距離之差。那我們只需要用到基準點距離最大值減去最小值,就得到了兩點之間距離最大值。對兩個基準分別做這個操作然後取較大的就可以了。複雜度o(n)。
#include
#include
#include
using
namespace
std;
const
int xl=-10000;
const
int yl=-10000;
const
int xr=10000;
const
int yr=-10000;
int main()
int ans=max(max1-min1, max2-min2);
printf("%d\n", ans);
}}
e.uncle bird』s idol
簡單的素數篩,但是由於只有一組資料,在本機跑nsqrt(n)的素數判別也能a。由於所有的ac**都是直接輸出答案的,出題人也不知道誰寫了篩法。標程是寫的埃氏篩法,有興趣的同學可以自行研究尤拉篩法。
#include
#include
using
namespace
std;
bool vis[10500000];
int prime[1050000];
int tot;
void init()}}
}int main()
f.the last problem
本來琢磨了很久用什麼防ak的,後來發現多慮了。。。
這個題原來是挑戰上的,改了一下資料,作為套路題還是顯得不夠真誠,不過出題人最近事務繁多,還請各位諒解一下。
考慮到(3+
7√)n
的共軛數(3
−7√)
n 。由二項式展開定理可知,(3
+7√)
n=a+
b7√ ,(3
−7√)
n=a−
b7√ 。兩式相加可得(3
+7√)
n+(3
−7√)
n=2a
。顯然(3
−7√)
n<
1 那麼題目就相當於求(2a-1)%1000。然後用矩陣快速冪解決即可。
#include
#include
using namespace std;
struct mat;
mat operator*(const mat& a, const mat& b)
}return ans;
}mat power(int x)
x>>=1;
base=base*base;
}return ans;
}int main()
}
2016第一次參加noi
2016年11月19日是我第一次參加noi比賽,我的內心十分緊張並且激動。我是今年暑假剛學習程式設計,這次競賽我的老師說能做出第一道就已經很不錯了,並且告訴我們這次去參加這個競賽主要是要積累經驗,於是我的內心沒有先前那麼緊張了。考試前一周,我認認真真的複習並背記了關於程式設計的一些內容,這也使我有了...
寫在2023年上班第一天
新年第一天上班,開工大吉,希望2016年收穫滿滿,當然希望所有的朋友們都在新的一年中事業愛情家庭三豐收,猴年心想事成!春節休息了半個月,和家人朋友開心地過了個春節,也花些時間學習知識等。上班的第一天,突然想胡亂寫點東西。想把這幾年的工作簡單記錄下。現在寫的東西很少,越來越不知道寫啥了,一年的時間過得...
2016暑假第一次測驗(7 14)
這道題要求求x1 2x2 nxn m n,m為輸入資料 的解集的個數 一開始我想用dp,f i,j,m sum,但樣例都過不了。後來想到了揹包,但一時沒有轉過彎,以前做的揹包都把物品價值給出了的,但這次卻讓我求價值 聳肩 std就是用的完全揹包,把1 n當作每個物品的價值,然後求個數使得剛好裝滿揹包...