t2dima and to-do list
t3dima and salad
t4t5dima and magic guitar
群賽14
t2decoding
t3tram
t4green and black tea
t1位置所在
就是有四個守衛,你需要賄賂一行的守衛,每行有2個守衛,有4個資料,分別是守衛1的蛋糕和茶水的值和守衛2的,,,如果輸入的資料的錢數能夠賄賂,就是出方案的花費!
#include
using namespace std;
int main()
}if(flag==1)
else
printf("-1\n");
return
0;}
無…
t2位置所在
就是每次取物品隔著m個數來取,求輸出的最大的和值的情況的初始的點的位置.
#include
using
namespace
std;
const
int n=100005;
int a[n];
long
long t[n];
int main()
for(int i=1; i<=m; i++)
if(ansprintf("%d\n",loc);
return
0;}
t3位置所在
有n個蛋糕,輸入了第一行是各個蛋糕的美味值ai,接下來是花費值bi,求使得能讓取了m個蛋糕的美味值的總和除以m個蛋糕的花費之總和為k!
求最大的美味值總和,並且輸出∑ai的知就好了!
就是將a[i]的值每次都減去k*b[i],就相當於是分離正係數的乙個做法,就像這樣:
for(int i=1; i
<=n; i++)
在就會得到一些有正有負的x[i]陣列,只要選取將其和為0 的資料就是可以了!因為這時候就是可以整除,因為互補嘛!
#include
using
namespace
std;
const
int n=10005;
int a[n],b[n],x[n];
int dp[105][n];
int main()
for(int i=1; i<=n; i++)
printf("%d\n",dp[n][v]?dp[n][v]:-1);
return
0;}
t4位置所在
有n個點m條無向邊。初始你需要選擇乙個整數x,走第i條邊的限制為li <= x <= ri,假設1-n的一條路徑上可以選擇的整數x有ans,問你最大的ans。
(所以說就是並查集,加上乙個暴力列舉就好了!)
#include
#include
#include
#include
using
namespace
std;
const
int n=2003;
int fa[n],ans;
struct tree
t[3005];
bool com(tree x,tree y)
int find(int x)
void add(int x,int y)
bool judge(int x,int y)
int main()
sort(t+1,t+1+m,com);
for(int i=1; i<=m; i++)}}
ans?printf("%d\n",ans):printf("nice work, dima!\n");
return
0;}
就是相當於一些大大小小的水管一樣的,每個資料都有上限和下限,所以就是問你,有多少的水流能夠一次性流到底:那麼就是變成了想法就是列舉乙個資料的下限!就是a[i].r的值,表示我每次只是去比它大的值,別的不去,就是這個思路了!
t5位置所在
就是求曼哈頓最遠距離……
#include
using
namespace
std;
const
int n=20005;
int f[n][10];
int main()
for(int i=1; i<=n; i++)
for(int j=1; j<=m; j++)
int sta,end,ans=0;
scanf("%d",&sta);
for(int i=2; i<=len; i++)
printf("%d\n",ans);
return
0;}
one:
(x1-x2) + (y1-y2) ---> (x1+y1) - (x2+y2)
two:
-(x1-x2) + (y1-y2) ---> (x2-y2) - (x1-y1)
three:
(x1-x2) - (y1-y2) ---> (x1-y1) - (x2-y2)
four:
-(x1-x2) - (y1-y2) ---> (x2+y2) - (x1+y1)
t1位置所在
不說了,直接上**!
#include
using namespace std;
int main()
t2位置所在
輸入1個長度為n(1<=n<=2000)的字串s1是由另乙個長度為n的字串s2變化而來,變化規則是:每次都把s2中間(如果長度是偶數就取小的乙個)的字母拿出放到s1的第乙個上,由此反覆進行直到取完。要求輸出s2這個字串。
找規律!!!
#include
using
namespace
std;
const
int n=2005;
char a[n],s[n];
int main()
if(n%2==1)
for(int i=1;i<=n;i++)
cout
for(int i=1;i<=n;i++)
cout
在一條直線上,座標從0到s。 人要從x1位置向x2位置移動,前進乙個單位要t2時間。 當人在x1位置,車子在p位置,前進乙個單位要t1秒。方向為d,d==1表示從正方向前進, d == -1表示負方向前進。 人可以在與車子相遇時,坐上車子。
#include
using namespace std;
int main()
else
if(tot2>tot1)
coutcout0;}
這道題目的關鍵就是抓住車到終點的時間和人到達終點的時間的min值!
就是這麼妙的題目!
t4位置所在
就是喝紅茶和黑茶,每次不能夠連續喝k次,輸出喝茶的方案就好!
#include
using
namespace
std;
int main()
if(a<=b)
for(int i=1; i<=cha; i++)
for(int i=1; i<=a+b; i+=2)
cout
<<"g"
<<"b";
}else
for(int i=1; i<=cha; i++)
for(int i=1; i<=a+b; i+=2)
cout
<<"b"
<<"g";
}}
奮鬥群群賽 4
t2arpa and an exam about geometry t3five dimensional points t4polycarpus dice總結 t1位置所在 有一排觀眾席,有n個人,當t 1時第乙個人站起來,t 2時第二個人站起來,t 3時第三個人站起來 到k位置,都是站起來,但是k...
奮鬥群群賽 9
t2the queue t3garland t4cartons of milk t5change free總結 t1位置所在 就是給你n個數字,讓你建乙個塔,從n到底部而且最後再到1,輸入天數,如果可以建立塔的話,輸出這些部分,如果沒有可以建的東西,就輸出換行就好了,第i位對應第i天下下來的食物!求...
奮鬥群群賽 15,16
t2s palindrome t3 exponential notation t4swaps in permutation t5xor sequences t6couple cover t1位置所在 就是給你乙個 01串,讓你找出是否這個串只有乙個 0 如果是,輸出 yes 不然就是輸出 no 但是...