之前挂上的

今天填坑

2018.2.14 #462

A

给两个集合,B分别可以从一个集合中选一个数,B想乘积最大,A想最小,A可以删除一个第一个集合中的元素,问最小能达到多少。

这题。。水死啦。我居然还wa了一发,因为ans初值定的0.。。。。我真是傻。

n3暴力就行

#include<bits/stdc++.h>
using namespace std;
#define ll long long
#define inf 1000000000000000001ll
int n,m;
ll a[],b[];
ll ans=inf;
int main(){
cin>>n>>m;
for(int i=;i<=n;i++)cin>>a[i];
for(int i=;i<=m;i++)cin>>b[i];
for(int k=;k<=n;k++){
ll ret=-inf;
for(int i=;i<=n;i++){
if(i==k)continue;
for(int j=;j<=m;j++){
ret=max(ret,a[i]*b[j]);
}
}
ans=min(ans,ret);
}
cout<<ans<<endl;
return ;
}

B

我记得小时候的脑筋急转弯

6666=4

8888=8

1234=1

5678=?

哈哈

数圈嘛

先全输出8,剩一个就输出6,剩下的输出1

#include<bits/stdc++.h>
using namespace std;
#define ll long long
int k; int main(){
cin>>k;
if(k>){
cout<<-<<endl;
return ;
}
else {
for(int i=;i<=;i++){
if(k>=){
cout<<;
k-=;
}
else if(k==){
cout<<;k--;}
else cout<<;
}
}
return ;
}

C

一个只有1,2的序列,你可以翻转一次任意子串,问翻转之后最长不下降子序列。

选择很多???

这题随便做嘛。

我是利用了一个小性质,就是从1到2的分界点,一定是在翻转的区间里,否则没意义。

然后枚举翻转区间,维护一下最长不下降子序列就好了。

#include<bits/stdc++.h>
using namespace std;
#define ll long long
int a[];
int l1[],l2[],r1[],r2[];
int n;
int ans;
int main(){
cin>>n;
for(int i=;i<=n;i++)cin>>a[i];
for(int i=;i<=n;i++){
l1[i]=l1[i-];
l2[i]=l2[i-];
if(a[i]==)l1[i]++;
else l2[i]++;
}
for(int i=n;i>=;i--){
r1[i]=r1[i+];
r2[i]=r2[i+];
if(a[i]==)r1[i]++;
else r2[i]++;
}
for(int i=;i<=n+;i++){
ans=max(ans,l1[i-]+r2[i]);
int ret=l1[i-]+r2[i];
int j=i-;
while(j&&a[j]==)j--;
int tt=;
for(;j>;j--){
if(a[j]==)tt++;
else if(tt)tt--;
ans=max(ans,ret+tt);
}
}
cout<<ans<<endl;
return ;
}

D

好题!!!

n order to put away old things and welcome a fresh new year, a thorough cleaning of the house is a must.

Little Tommy finds an old polynomial and cleaned it up by taking it modulo another. But now he regrets doing this...

Given two integers p and k, find a polynomial f(x) with non-negative integer coefficients strictly less than k, whose remainder is p when divided by (x + k). That is, f(x) = q(x)·(x + k) + p, where q(x) is a polynomial (not necessarily with integer coefficients).

Input

The only line of input contains two space-separated integers p and k (1 ≤ p ≤ 1018, 2 ≤ k ≤ 2 000).

Output

If the polynomial does not exist, print a single integer -1, or output two lines otherwise.

In the first line print a non-negative integer d — the number of coefficients in the polynomial.

In the second line print d space-separated integers a0, a1, ..., ad - 1, describing a polynomial  fulfilling the given requirements. Your output should satisfy 0 ≤ ai < k for all 0 ≤ i ≤ d - 1, and ad - 1 ≠ 0.

If there are many possible solutions, print any of them.

这题没有special judge

只有唯一解

根据多项式意义,可以发现,f(x)的第一位是可以立即确定的,然后根据第一位可以推出第二位....依次类推。

然后我们发现,这个不断从上一项推出下一项的过程,很像之前做过的负进制转换。(luoguP 1107)

吐槽一下,我当时发现很像,并且过了pretest之后,告诉洛谷群,结果群里面一堆小孩说我钓鱼。。。。。

这件事情教育我们,干什么要先过脑子,,,,,

其实就是把p转化为(-k)进制,输出,结束。

(自行去luogu题解粘代码)

E

计算几何,,,,,gg

#include<bits/stdc++.h>
using namespace std;
struct point{
double x,y;
};
double xmult(point p1,point p2,point p0){
return (p1.x-p0.x)*(p2.y-p0.y)-(p2.x-p0.x)*(p1.y-p0.y);
}
double dist(point p1,point p2){
return sqrt((p1.x-p2.x)*(p1.x-p2.x)+(p1.y-p2.y)*(p1.y-p2.y));
} point intersection(point u1,point u2,point v1,point v2){
point ret=u1;
double t=((u1.x-v1.x)*(v1.y-v2.y)-(u1.y-v1.y)*(v1.x-v2.x))
/((u1.x-u2.x)*(v1.y-v2.y)-(u1.y-u2.y)*(v1.x-v2.x));
ret.x+=(u2.x-u1.x)*t;
ret.y+=(u2.y-u1.y)*t;
return ret;
}
const double eps=1e-;
point dot_to_circle(point c,double r,point p){
point u,v;
if (dist(p,c)<eps)
return p;
u.x=c.x+r*fabs(c.x-p.x)/dist(c,p);
u.y=c.y+r*fabs(c.y-p.y)/dist(c,p)*((c.x-p.x)*(c.y-p.y)<?-:);
v.x=c.x-r*fabs(c.x-p.x)/dist(c,p);
v.y=c.y-r*fabs(c.y-p.y)/dist(c,p)*((c.x-p.x)*(c.y-p.y)<?-:);
return dist(u,p)<dist(v,p)?u:v;
}
void intersection_line_circle(point c,double r,point l1,point l2,point& p1,point& p2){
point p=c;
double t;
p.x+=l1.y-l2.y;
p.y+=l2.x-l1.x;
p=intersection(p,c,l1,l2);
t=sqrt(r*r-dist(p,c)*dist(p,c))/dist(l1,l2);
p1.x=p.x+(l2.x-l1.x)*t;
p1.y=p.y+(l2.y-l1.y)*t;
p2.x=p.x-(l2.x-l1.x)*t;
p2.y=p.y-(l2.y-l1.y)*t;
}
void intersection_circle_circle(point c1,double r1,point c2,double r2,point& p1,point& p2){
point u,v;
double t;
t=(+(r1*r1-r2*r2)/dist(c1,c2)/dist(c1,c2))/;
u.x=c1.x+(c2.x-c1.x)*t;
u.y=c1.y+(c2.y-c1.y)*t;
v.x=u.x+c1.y-c2.y;
v.y=u.y-c1.x+c2.x;
intersection_line_circle(c1,r1,u,v,p1,p2);
} int n;
int sqr(int x){
return x*x;
}
int cross(int a,int b,int c,int d,int e,int f){
if(sqr(a-d)+sqr(b-e)>=sqr(c+f))return ;
if(sqr(a-d)+sqr(b-e)<=sqr(c-f))return ;
return ;
}
int a,b,c,d,e,f,g,h,i;
int ct(int a,int b,int c,int d,int e,int f){
if(sqr(a-d)+sqr(b-e)==sqr(c+f))return ;
if(sqr(a-d)+sqr(b-e)==sqr(c-f))return ;
return ;
}
//3
//-4 4 4
//2 4 2
//-1 0 6 int main()
{
cin>>n;
if(n==){
cin>>a>>b>>c;
cout<<;
return ;
}
if(n==){
cin>>a>>b>>c>>d>>e>>f;
cout<<+cross(a,b,c,d,e,f);
return ;
}
cin>>a>>b>>c>>d>>e>>f>>g>>h>>i;
int ret=;
if(cross(a,b,c,d,e,f)&&cross(d,e,f,g,h,i)&&cross(g,h,i,a,b,c)){
ret=;
double num1,num2,num3,num4,num5,num6;
double r1,r2,r3;
num1=a,num2=b,r1=c;
num3=d,num4=e,r2=f;
num5=g,num6=h,r3=i;
point w,ww,p1,p2;
w.x=a,w.y=b;ww.x=d,ww.y=e;
intersection_circle_circle(w,r1,ww,r2,p1,p2);
num1=p1.x,num2=p1.y,num3=p2.x,num4=p2.y;
if(fabs((num1-num5)*(num1-num5)+(num2-num6)*(num2-num6)-r3*r3)<eps)ret--;
if(fabs((num3-num5)*(num3-num5)+(num4-num6)*(num4-num6)-r3*r3)<eps)ret--;
cout<<ret<<endl;
}
else {
ret=+cross(a,b,c,d,e,f)+cross(d,e,f,g,h,i)+cross(g,h,i,a,b,c);
if(ret==){
if((ct(a,b,c,d,e,f)+)/+(ct(d,e,f,g,h,i)+)/+(ct(g,h,i,a,b,c)+)/){
double num1,num2,num3,num4,num5,num6;
double r1,r2,r3;
num1=a,num2=b,r1=c;
num3=d,num4=e,r2=f; if(cross(a,b,c,d,e,f)){
point w,ww,p1,p2;
w.x=a,w.y=b;ww.x=d,ww.y=e;
intersection_circle_circle(w,r1,ww,r2,p1,p2);
num1=p1.x,num2=p1.y,num3=p2.x,num4=p2.y;
num5=g,num6=h,r3=i;if(fabs((num1-num5)*(num1-num5)+(num2-num6)*(num2-num6)-r3*r3)>eps&&fabs((num3-num5)*(num3-num5)+(num4-num6)*(num4-num6)-r3*r3)>eps)ret++;
}
else if(cross(a,b,c,g,h,i)){point w,ww,p1,p2;
w.x=a,w.y=b;ww.x=g,ww.y=h;
intersection_circle_circle(w,r1,ww,i,p1,p2);
num1=p1.x,num2=p1.y,num3=p2.x,num4=p2.y;
num5=d,num6=e,r3=f;if(fabs((num1-num5)*(num1-num5)+(num2-num6)*(num2-num6)-r3*r3)>eps&&fabs((num3-num5)*(num3-num5)+(num4-num6)*(num4-num6)-r3*r3)>eps)ret++;
}
}
}
else if(ret==){
ret+=((ct(a,b,c,d,e,f)+)/+(ct(d,e,f,g,h,i)+)/+(ct(g,h,i,a,b,c)+)/)/;
}
if(ret==){
if(ct(a,b,c,d,e,f)&&ct(d,e,f,g,h,i)&&ct(g,h,i,a,b,c)){
double num1,num2,num3,num4;
if(ct(a,b,c,d,e,f)==)num1=a+1.0*(d-a)*c/(c+f),num2=b+1.0*(e-b)*c/(c+f);
else {
if(c>f){
num1=a+1.0*(d-a)*c/(c-f),num2=b+1.0*(e-b)*c/(c-f);
}
else {
num1=d+1.0*(a-d)*f/(f-c),num2=e+1.0*(b-e)*f/(f-c);
}
}
if(ct(g,h,i,a,b,c)==)num3=a+1.0*(g-a)*c/(c+i),num4=b+1.0*(h-b)*c/(c+i);
else {
if(c>i){
num3=a+1.0*(g-a)*c/(c-i),num4=b+1.0*(h-b)*c/(c-i);
}
else {
num3=d+1.0*(a-g)*i/(i-c),num4=e+1.0*(b-h)*i/(i-c);
}
}
if(fabs(num3-num1)>eps||fabs(num4-num2)>eps)ret++;
}
}
cout<<ret<<endl;
}
return ;
}

为什么老是说我颓废呢,,,,,我不颓废啊。

感觉,带修改莫队真是简单。

codeforces round#466

因为F一直不会,当时想到莫队,怎奈不会修改。

其实很简单,中午用了3分钟就看明白待修改莫队了。

然后F题就变成了大水题。。。

这场比赛应该AK的,,,,而我却没把握住机会。

多少有点遗憾吧。

A

给一个大小为n的集合,和一个常数d,问最少删除多少个数才能使得集合中,最大值与最小值相差小于k。

(不懂Doggu辣么强的选手为什么没有秒切并1A)

cf的div2T1从来不用什么算法。。。

sort之后枚举最大最小值即可。

#include<bits/stdc++.h>
using namespace std;
int a[];
int n,d;
int ans=;
int main(){
cin>>n>>d;
for(int i=;i<=n;i++){
cin>>a[i];
}
sort(a+,a+n+);
for(int i=;i<=n;i++){
int ret=i-;
for(int j=n;j>i;j--){
if(a[j]-a[i]<=d)break;
ret++;
}
ans=min(ans,ret);
}
cout<<ans;
return ;
}

B

给4个整数,n,k,A,B。

n每次可以-1或/k,代价分别是A,B问用最小代价使n变成1

不说了,直接上代码。都能看懂。

#include<bits/stdc++.h>
using namespace std; #define ll long long
ll n,k,a,b;
ll ans=;
int main(){
cin>>n>>k>>a>>b;
if(k==){
ans=(n-)*a;
cout<<ans<<endl;
return ;
}
while(n!=){
if(n%k==){
ll tt=(n-n/k)*a;
ll t=b;
ans+=min(t,tt);
n=n/k;
}
else {
if(n>k){
ans+=(n%k)*a;
n-=n%k;
}
else {
ans+=(n-)*a;
n=;
}
}
}
cout<<ans;
return ;
}

(Doggu这次没打好存粹是心态问题)

C

太水了,不说了,不说了。

前三题绝对是普及组难度的。

D

"We've tried solitary confinement, waterboarding and listening to Just In Beaver, to no avail. We need something extreme."

"Little Alena got an array as a birthday present..."

The array b of length n is obtained from the array a of length n and two integers l and r (l ≤ r) using the following procedure:

b1 = b2 = b3 = b4 = 0.

For all 5 ≤ i ≤ n:

  • bi = 0 if ai, ai - 1, ai - 2, ai - 3, ai - 4 > r and bi - 1 = bi - 2 = bi - 3 = bi - 4 = 1
  • bi = 1 if ai, ai - 1, ai - 2, ai - 3, ai - 4 < l and bi - 1 = bi - 2 = bi - 3 = bi - 4 = 0
  • bi = bi - 1 otherwise

You are given arrays a and b' of the same length. Find two integers l and r (l ≤ r), such that applying the algorithm described above will yield an array b equal to b'.

It's guaranteed that the answer exists.

维护四个数,maxl,maxr,minl,minr。不断缩小范围即可。

#include<bits/stdc++.h>
using namespace std; #define ll long long
#define inf 1000000000
int n;
int a[];
string b;
int maxl,maxr,minl,minr;
int main(){
maxl=maxr=inf;
minl=minr=-inf;
cin>>n;
for(int i=;i<n;i++)cin>>a[i];
cin>>b;
bool f1,f2;
int L,R;
for(int i=;i<n;i++){
f1=f2=;
if(b[i-]==''&&b[i-]==''&&b[i-]==''&&b[i-]=='')f1=;
if(b[i-]==''&&b[i-]==''&&b[i-]==''&&b[i-]=='')f2=;
L=min(min(a[i],min(a[i-],a[i-])),min(a[i-],a[i-])),R=max(max(a[i],max(a[i-],a[i-])),max(a[i-],a[i-]));
int x=b[i]-'';
int y=b[i-]-'';
if(x==){
if(y==){
if(f2){
minr=max(L,minr);
}
}
else {
if(f1){
minl=max(R+,minl);
}
}
}
else {
if(y==){
if(f2){
maxr=min(maxr,L-);
}
}
else {
if(f1){
maxl=min(maxl,R);
}
}
}
}
cout<<minl<<" "<<maxr<<endl;
return ;
}

E

Since you are the best Wraith King, Nizhniy Magazin «Mir» at the centre of Vinnytsia is offering you a discount.

You are given an array a of length n and an integer c.

The value of some array b of length k is the sum of its elements except for the  smallest. For example, the value of the array [3, 1, 6, 5, 2] with c = 2 is 3 + 6 + 5 = 14.

Among all possible partitions of a into contiguous subarrays output the smallest possible sum of the values of these subarrays.

Input

The first line contains integers n and c (1 ≤ n, c ≤ 100 000).

The second line contains n integers ai (1 ≤ ai ≤ 109) — elements of a.

Output

Output a single integer  — the smallest possible sum of values of these subarrays of some partition of a.

很容易得到一个小性质,选长度恰好为c的区间最优。

所以,st表求区间最小值。

dp[i]表示到i位置最大能刨去多大的数

dp[i]=max(dp[i-1],dp[i-10]+qmin(i-10+1,i))

ans=SUM-dp[n];

#include<bits/stdc++.h>
using namespace std; #define ll long long
int rmq[][];
int lg[];
int n,c;
ll dp[];
ll sum;
int query(int l,int r){
int k=lg[r-l+];
return min(rmq[k][l],rmq[k][r-(<<k)+]);
}
int main(){
cin>>n>>c;
for(int i=;i<=n;i++)lg[i]=lg[i>>]+;
for(int i=;i<=n;i++){
cin>>rmq[][i];
sum+=rmq[][i];
}
for(int i=;i<=;i++){
for(int j=;j+(<<i)-<=n;j++){
rmq[i][j]=min(rmq[i-][j],rmq[i-][j+(<<i-)]);
}
}
for(int i=c;i<=n;i++){
dp[i]=max(dp[i-],dp[i-c]+query(i-c+,i));
}
cout<<sum-dp[n];
return ;
}

F

带修改莫队裸题。

小结论,ans不超过2*sqrt(n)

#include<bits/stdc++.h>
using namespace std;
#define N 400010
map<int,int> ma;
inline int read(){
int x=;char ch=getchar();
while(ch<''||ch>'')ch=getchar();
while(ch>=''&&ch<='')x=x*+ch-'',ch=getchar();
return x;
}
int dd;
struct Q{
int l,r,t,id;
}q[N]; struct C{
int pos,x,o;
}c[N]; int block;
bool comp(Q u,Q v){
return u.l/block<v.l/block || u.l/block==v.l/block && u.r/block<v.r/block || u.l/block==v.l/block && u.r/block==v.r/block && u.t<v.t;
} int a[N];
int b[N];
int n,m;
int d[N];
int e[N];
void add(int x,int y){
b[e[x]]--;
e[x]+=y;
b[e[x]]++;
}
int ans[N];
int main(){
n=read(),m=read();
for(int i=;i<=n;i++){
a[i]=read();
if(ma.count(a[i]))a[i]=ma[a[i]];
else ma[a[i]]=++dd,a[i]=dd;
d[i]=a[i];
}
block=ceil(pow(n,./));
int cnt=;
int cnt1=;
int x,y,z;
for(int i=;i<=m;i++){
x=read(),y=read(),z=read();
if(x==)q[++cnt].l=y,q[cnt].r=z,q[cnt].t=cnt1,q[cnt].id=cnt;
else {
if(ma.count(z))z=ma[z];
else ma[z]=++dd,z=dd;
c[++cnt1].pos=y,c[cnt1].x=z,c[cnt1].o=d[y];d[y]=z;
}
}
int l,r,t;
l=r=t=;
sort(q+,q+cnt+,comp);
for(int i=;i<=cnt;i++){
while(r<q[i].r){
r++;
add(a[r],);
}
while(l>q[i].l){
l--;
add(a[l],);
}
while(r>q[i].r){
if(r<=n)add(a[r],-);
r--;
}
while(l<q[i].l){
if(l)add(a[l],-);
l++;
}
while(t<q[i].t){
++t;
int pos=c[t].pos;
a[pos]=c[t].x;
if(pos>=l&&pos<=r)add(c[t].o,-),add(c[t].x,);
}
while(t>q[i].t){
int pos=c[t].pos;
a[pos]=c[t].o;
if(pos>=l&&pos<=r)add(c[t].o,),add(c[t].x,-);
t--;
}
for(int j=;j<=;j++){
if(!b[j]){
ans[q[i].id]=j;
break;
}
}
}
for(int i=;i<=cnt;i++){
printf("%d\n",ans[i]);
}
return ;
}

Amphetamine的cf日记的更多相关文章

  1. CF掉分日记 6.6 6.8

    ---恢复内容开始--- 写的效果依旧不好 还没写完前四题比赛就结束了 而且这些普及组的题目 我大多还是缺少简单算法的灵性 总是把问题搞复杂化. 6.5 A 第一道题非常水 简单分析发现是一个快速幂的 ...

  2. [日常] NOIP前集训日记

    写点流水账放松身心... 10.8 前一天考完NHEEE的一调考试终于可以开始集训了Orz (然后上来考试就迟到5min, GG) T1维护队列瞎贪心, 过了大样例交上去一点也不稳...T出翔只拿了5 ...

  3. Linux管理日记(二)

    14  启动内网端口转发 ### 2. 查看IP以及网卡信息 # 可以发现, eth0 的地址 inet addr:10.144.7.195, 此为内网网卡 # 公网网卡, eth1 的地址 inet ...

  4. 友链&&日记

    上面友链,下面日记 友人链 最喜欢galgameの加藤聚聚 初三一本&&\(ACG\)姿势比我还丰厚的yx巨巨 更喜欢galgame的shadowice czx ZigZag胖胖 文文 ...

  5. 租酥雨的NOIP2018赛前日记

    租酥雨的NOIP2018赛前日记 离\(\mbox{NOIP2018}\)只剩下不到一个月的时间辣! 想想自己再过一个月就要退役了,觉得有必要把这段时间的一些计划与安排记录下来. 就从国庆收假开始吧. ...

  6. 日记(OI 无关,文化课无关)

    2019.11.13 今天在研究 wss 的代码为什么比我快那么多. 看见他定义了一个结构体叫 thxorz,一定是因为 orz 了 thx 得到了信仰加成了. 然后刚说完这句话就看见 thx 走了进 ...

  7. 日记 + sb错误

    置顶消息cpdd 1.29 完了,文化课没了 我是废物 1.28 更新了自己的副标题 前副标题:Future never has to do with past time,but present ti ...

  8. 微信小程序开发日记——高仿知乎日报(下)

    本人对知乎日报是情有独钟,看我的博客和github就知道了,写了几个不同技术类型的知乎日报APP 要做微信小程序首先要对html,css,js有一定的基础,还有对微信小程序的API也要非常熟悉 我将该 ...

  9. 微信小程序开发日记——高仿知乎日报(中)

    本人对知乎日报是情有独钟,看我的博客和github就知道了,写了几个不同技术类型的知乎日报APP要做微信小程序首先要对html,css,js有一定的基础,还有对微信小程序的API也要非常熟悉 我将该教 ...

随机推荐

  1. Android 自动化测试及性能数据采集的 Python 脚本

    文主要介绍一个基于 uiautomator2 封装的一个 Python 库 android-catcher ,该库的功能主要有对 Android 设备进行 UI 自动化测试 和 采集手机性能数据 ,适 ...

  2. CentOS7.2最小化安装后系统优化

    系统初始化技术的演变 1.sysvinit技术 (1)Linux系统的第一个进程(pid=1)为init: Linux 操作系统的启动首先从 BIOS 开始,接下来进入 boot loader,由 b ...

  3. JUC——JUC开发简介(一)

    前言 JUC是Java5.0开始提供的一组专门实现多线程并发处理的开发框架,利用JUC开发架构可以有效的解决实际线程项目开发之中出现的死锁.阻塞.资源访问与公平机制. 此笔记主要记录java.util ...

  4. Sublime Text 3高效实用快捷键

    2017-11-27 16:18:48 Sublime Text 3 高效实用快捷键 Sublime Text 3 软件及注册码 官网下载链接在这里,有时候会很神奇的上不去,可能是因为被Q了,可能就是 ...

  5. scrapy-redis+selenium+webdriver解决动态代理ip和user-agent的问题(全网唯一完整代码解决方案)

    问题描述:在爬取一些反爬机制做的比较好的网站时,经常会遇见一个问题就网站代码是通过js写的,这种就无法直接使用一般的爬虫工具爬取,这种情况一般有两种解决方案 第一种:把js代码转为html代码,然后再 ...

  6. 如何成为优秀评级卖家(Top-rated seller)?与超级卖家的区别是

    以eBay美国站点为例,要成为优秀评级卖家(Top-rated seller),需满足如下条件: ● 先成为 eBay超级卖家 ● Low DSR (US buyers) <= 0.50% 或 ...

  7. spark RDD、DataFrame、DataSet之间的相互转化

    这三个数据集看似经常用,但是真正归纳总结的时候,很容易说不出来 三个之间的关系与区别参考我的另一篇blog  http://www.cnblogs.com/xjh713/p/7309507.html ...

  8. 【二分图匹配】Plug It In!

    http://codeforces.com/gym/101873 F 先对原图跑一遍匈牙利得到原始最大匹配,再遍历每个出度>1的点,考虑若新加入点,能否找到增广路,若可行则答案对应增加 代码: ...

  9. DFS(DP)---POJ 1014(Dividing)

    原题目:http://poj.org/problem?id=1014 题目大意: 有分别价值为1,2,3,4,5,6的6种物品,输入6个数字,表示相应价值的物品的数量,问一下能不能将物品分成两份,是两 ...

  10. ios framework 使用图片资源

    framework 的制作工程见:http://www.cocoachina.com/ios/20141126/10322.html: 遇到问题: 由于自己的framework 要使用图片资源,最后找 ...