U598694 整数求和
智人都会系列。
#include<iostream>
using namespace std;
int n,ans;
int main(){
ios::sync_with_stdio(0);
cin.tie(nullptr);
cin>>n;
for(int i=1;i<=n;i++){
int t;
cin>>t;
ans+=t;
}
cout<<ans;
return 0;
}
U598695 都是兄第
都是兄弟,写什么题?
#include<iostream>
#include<vector>
#include<set>
using namespace std;
int n,m;
vector<set<int>>v;
int main(){
ios::sync_with_stdio(0);
cin.tie(nullptr);
cin>>n>>m;
v.resize(n);
for(int i=0;i<m;i++){
int k;
cin>>k;
for(int t=0;t<k;t++){
int p;
cin>>p;
v[p-1].insert(i);
}
}
for(auto &&i:v){
for(auto &&t:v){
bool fd=0;
for(int l=0;l<m;l++){
if(i.find(l)!=i.end()&&t.find(l)!=t.end()){
fd=1;
}
}
if(!fd){
cout<<"No";
return 0;
}
}
}
cout<<"Yes";
return 0;
}
U598696 和为偶数
奇偶分离。
#include<iostream>
#include<vector>
#include<algorithm>
using namespace std;
int n,maxn;
vector<int>ods,tds;
int main(){
ios::sync_with_stdio(0);
cin.tie(nullptr);
cin>>n;
for(int i=0;i<n;i++){
int t;
cin>>t;
if(t%2){
ods.push_back(t);
}else{
tds.push_back(t);
}
}
sort(ods.begin(),ods.end());
sort(tds.begin(),tds.end());
if(tds.size()<2&&ods.size()<2){
cout<<-1;
return 0;
}
if(tds.size()==1){
maxn=max(maxn,tds.back());
}
if(ods.size()>=2){
maxn=max(maxn,ods.back()+*(ods.rbegin()+1));
}
if(tds.size()>=2){
maxn=max(maxn,tds.back()+*(tds.rbegin()+1));
}
cout<<maxn;
return 0;
}
U598706 棋子跳跃
最新专武:跳棋球珠。
#include<iostream>
#include<vector>
#include<queue>
#include<array>
using namespace std;
int n,k,cnt;
vector<int>rx(1),ry(1);
vector<vector<int>>vis;
class bfs_class{
queue<pair<int,int>>q;
public:
void run(){
q.push(make_pair(1,1));
while(q.size()){
auto tp=q.front();
q.pop();
for(int i=1;i<=cnt;i++){
int nx=tp.first+rx[i],ny=tp.second+ry[i];
if(nx>=1&&nx<=n&&ny>=1&&ny<=n&&vis[nx-1][ny-1]==-1){
vis[nx-1][ny-1]=vis[tp.first-1][tp.second-1]+1;
q.push(make_pair(nx,ny));
}
}
}
}
}bfs;
int main(){
ios::sync_with_stdio(0);
cin.tie(nullptr);
cin>>n>>k;
vis.resize(n);
for(auto &&i:vis){
i.resize(n);
for(auto &&t:i){
t=-1;
}
}
vis[0][0]=0;
for(int i=-410;i<=410;i++){
for(int t=-410;t<=410;t++){
if(i*i+t*t==k){
cnt++;
rx.push_back(i);
ry.push_back(t);
}
}
}
bfs.run();
for(auto i:vis){
for(auto t:i){
cout<<t<<' ';
}
cout<<'\n';
}
return 0;
}
U598715 暴力出省一
美梦成真!
#include<iostream>
#include<vector>
#include<algorithm>
using namespace std;
int n,m;
vector<int>v;
vector<vector<int>>jf;
int main(){
ios::sync_with_stdio(0);
cin.tie(nullptr);
cin>>n>>m;
v.resize(n);
for(auto &&i:v){
cin>>i;
}
jf.resize(m);
for(int i=1;i<=n;i++){
int j=1;
if(v[i-1]<0){
j=-v[i-1]/i;
}
for(;v[i-1]+j*i<=n&&j<=m;j++){
if(v[i-1]+j*i>=0){
jf[j-1].push_back(v[i-1]+j*i);
}
}
}
for(int i=1;i<=m;i++){
sort(jf[i-1].begin(),jf[i-1].end());
int ans=0,f=0;
for(auto x:jf[i-1]){
if(x<ans){
continue;
}
if(ans!=x){
f=1;
cout<<ans<<endl;
break;
}else{
ans++;
}
}
if(!f){
cout<<ans<<'\n';
}
}
return 0;
}
本页面的所有内容均在CC-BY-NC-ND和SATA协议之条款下提供,附加条款亦可能应用