牛客寒假訓練賽1,自己水平還是太差了。
a:
題意:有計算符號和結果,求最初的數
思路:簡單模擬
#include#define ll long long
struct note
a[101];
int main()
}printf("%lld",k);
return 0;
}
b:給定2,0,4的數量,對其進行排列,計算1~i的(a[i]-a[i-1])^2的和
構造,4,0,4,0是最優解,所以需要先排列,然後再考慮其他情況
#includeint a[5];
int main()
for(int i=1;i<=n;i++)
else
if(a[2])
break;
}case 2:
else
if(a[0])
break;
}case 4:
else if(a[2])
break;
}}
}printf("%d",ans);
return 0;
}
c:
題意:n個節點,第i個節點有pi,當pi>pj時,飛船可以從i到j,飛往後,耐久變為t異或pj,t的初始值為1,求到達n的耐久最大為多少
思路:dp,實際上有點floyd的感覺,又有點搜尋的感覺(確實可以拿搜尋過
#include#include#include#include#define maxn 10003
#define maxp 4096
//3000用二進位制表示最大也就是1<<12
//less,greater包含在iostream裡面??撓頭.jpg
using namespace std;
int n;
int p[maxn];
int dp[maxp];
int main()
if(begin<=end)//只有在這種情況下才無法到達
sort(p+1,p+1+n,greater());
while(p[x]>begin&&x1)
y--;
dp[end^begin]=1;
for(int i=x+1;i=0;j--)
dp[j]|=dp[j^p[i]];//需要保證之前的情況也能夠到達
} for(int i=maxp-1;i>=0;i--)
if(dp[i]) //找到最大值
return 0;
}
d:
題意:初始**數分別為a,b,兩人從兩端相向而行,當位置和n互質的時候,a*k^x,b*k^y,求最後兩者之和,並向1e9+7取模
思路:數論,求出與n互質的數的和,然後快速冪(或者其他操作
#include#define mod 1000000007
#define ll long long
//relocation truncated to fit 記憶體使用超限
//尤拉函式
//此處應該使用求單個數尤拉函式的函式
//因為根本不需要求全部
int phi(int x)
}if(x > 1) ans = ans / x * (x-1);
//若x有大於根號下x的因數,則需繼續刪去
//易得,x只有可能又乙個這樣的因數
//所以判斷一次即可
return ans;
}//快速冪
//有時間可以學下位運算的寫法
ll qik(ll a,ll x)
return res;
} int main()
e:
題意:n*m的矩陣,p個轟炸機,兩種轟炸模式,一種是對角線分別為x,y的菱形,一種只轟炸上半部分,求最後轟炸次數的異或和
思路:查分,但是暫時還是看不懂幾個陣列之間是怎麼實現的(我理解能力真差.jpg)
f:
題意:長度為n的序列,數字在1~v之間,給任意位置的數賦值形成子串行,子串行需滿足嚴格遞增,萌值定義為除序列最大值以外所有值的乘積,若只有乙個數則為1,求所有序列萌值的和
思路:dp,自己嘗試著去寫狀態轉移方程,並且利用sum作為字首和,記錄前面的代價
#include#define maxn 5005
#define ll long long
#define mod 1000000007
#define maxn 5005
int dp[maxn][maxn];
int main()
}ll ans=0;
for(int i=1;i<=v;i++)
ans=(ans+dp[n][i])%mod;
printf("%lld",ans);
return 0;
}
g:
題意:排序後所有數左右相差值為1,則說明這個序列為「萌」的,現在給出序列n,求最小長度[l,r]的萌序列,並且要求含有x,y
h:
牛客訓練賽1
honoka和格點三角形 只有兩種三角形,底邊為2,高為1和底邊為1,高為2 1,直角三角形 4 n 1 m 2 4 n 2 m 1 2,底邊在x軸,為2 2 m 2 m 2 n 1 2,底邊在y軸,為2 2 n 2 n 2 m 1 3,底邊在x軸,為1 2 m 1 m 2 n 2 4,底邊在y軸,...
2016 1 26寒假訓練賽1
2016.1.26寒假訓練賽1 a a mathematical curiosity 按照題意,暴力列舉過去,統計結果即可 b tempter of the bone 搜尋入門題目,按最簡單的方式寫即可 c r n 1.特殊處理a和b中有乙個為0的情況,如果成立的話,結果增加4 2.其他的情況,先考...
牛客寒假第一場訓練賽
比賽鏈結 題解b題 構造題先找構造括號效率比較高的方法 這種括號裡面套括號效率比較高而且合法 所以思路就是對所給整數開方,剩餘的零頭我們用列舉的方法。但是對於一些資料直接用開方得到的數x構造的話,會導致零頭太小,不好構造零頭 第一步構造的是乙個對稱的括號,有x個左括號,如果零頭小於x的話,就不好構造...