1309 条题解
-
-1Sky1231 (sky1231) LV 10 @ 2017-10-07 16:54:42
#include <cmath> #include <cstdio> #include <cstdlib> #include <cstring> #include <iomanip> #include <algorithm> #include <vector> #include <deque> #include <limits> #include <string> #include <sstream> using namespace std; const int oo_min=0xcfcfcfcf,oo_max=0x3f3f3f3f; int n,m,t; vector<int> f; vector<int> e; vector<int> u; vector<int> pre; vector<int> vis; vector<vector<int> > c; vector<vector<int> > p; vector<vector<int> > ce; vector<vector<int> > cw; deque<int> q; void add_edge_1(int x,int y,int c_v,int p_v) { cw[x].push_back(y); c[x].push_back(c_v); p[x].push_back(p_v); ce[y].push_back(cw[x].size()-1); cw[y].push_back(x); c[y].push_back(0); p[y].push_back(-p_v); ce[x].push_back(cw[y].size()-1); } int bfs_1(int s,int t,int *flow,int *cost) { f.resize(0); f.resize(cw.size(),0); f[s]=oo_max; e.resize(0); e.resize(cw.size(),-1); u.resize(0); u.resize(cw.size(),oo_max); u[s]=0; pre.resize(0); pre.resize(cw.size(),-1); pre[s]=s; vis.resize(0); vis.resize(cw.size(),0); for (q.resize(0),vis[s]=1,q.push_back(s);(!q.empty());vis[q.front()]=0,q.pop_front()) { int now=q.front(); for (int i=0;i<cw[now].size();i++) if (c[now][i]&&u[now]+p[now][i]<u[cw[now][i]]) { f[cw[now][i]]=min(c[now][i],f[now]); e[cw[now][i]]=i; u[cw[now][i]]=u[now]+p[now][i]; pre[cw[now][i]]=now; if (vis[cw[now][i]]==0) vis[cw[now][i]]=1,q.push_back(cw[now][i]); } } (*flow)=f[t]; (*cost)=u[t]; return (pre[t]!=-1); } void min_cost_max_flow_1(int s,int t,int *flow,int *cost) { int temp_flow,temp_cost; while (bfs_1(s,t,&temp_flow,&temp_cost)) { for (int i=t;i!=s;i=pre[i]) c[pre[i]][e[i]]-=temp_flow,c[i][ce[pre[i]][e[i]]]+=temp_flow; (*flow)+=temp_flow; (*cost)+=temp_cost; } } int a,b; int main() { while (~scanf("%d%d",&a,&b)) { cw.resize(0); cw.resize(2); ce.resize(0); ce.resize(cw.size()); c.resize(0); c.resize(cw.size()); p.resize(0); p.resize(cw.size()); add_edge_1(0,1,oo_max,a); add_edge_1(0,1,oo_max,b); int ans_flow=0,ans_cost=0; min_cost_max_flow_1(0,1,&ans_flow,&ans_cost); printf("%d\n",ans_cost); } }
-
-12017-10-06 16:54:44@
var a, b:longint;
begin
readln(a, b);
writeln(a + b);
end. -
-12017-09-20 17:52:40@
#include<stdio.h>
#define can int main()
#define i {
#define fuck int a,b;
#define you scanf("%d%d",&a,&b);
#define en printf("%d",a+b);
#define h return 0;
#define e }can i fuck you en h e
-
-12017-08-25 01:27:03@
#include <iostream> using namespace std; int main() { int a, b; cin >> a >> b; cout << a + b << endl; }
-
-12017-08-25 01:26:33@
#include <iostream>
using namespace std;
int main()
{
int a, b;
cin >> a >> b;
cout << a + b << endl;
} -
-12017-08-23 21:08:36@
#include<bits/stdc++.h> using namespace std; int f[1000011]; int gf(int x) { if (f[x]==x) return x; else return f[x]=gf(f[x]); } int un(int x,int y) { f[gf(x)]=gf(y); } int main() { int a,b; for (int i=1;i<=100010;i++) f[i]=i; cin>>a>>b; for (int i=2;i<=a;i++)un(i-1,i); for (int i=a+2;i<=a+b;i++)un(i-1,i); un(1,a+b); int ans=1; for (int i=2;i<=100010;i++) if (gf(i-1)==gf(i)) ans++; cout<<ans; }
-
-12017-08-23 21:08:08@
#发一个并查集的代码
cpp
#include<bits/stdc++.h>
using namespace std;
int f[1000011];
int gf(int x)
{
if (f[x]==x) return x;
else return f[x]=gf(f[x]);
}
int un(int x,int y)
{
f[gf(x)]=gf(y);
}
int main()
{
int a,b;
for (int i=1;i<=100010;i++) f[i]=i;
cin>>a>>b;
for (int i=2;i<=a;i++)un(i-1,i);
for (int i=a+2;i<=a+b;i++)un(i-1,i);
un(1,a+b);
int ans=1;
for (int i=2;i<=100010;i++) if (gf(i-1)==gf(i)) ans++;
cout<<ans;
}
-
-12017-08-16 18:26:54@
C++,我用个二进制吧。。。
#include<iostream>
#include<cstdio>
#include<cstdlib>
#include<cmath>
#include<algorithm>
using namespace std;
int main()
{
int a,b,s=0,s1=0,i=0,na=0,nb=0;
cin>>a>>b;
if(a<=0) na=1,a*=-1;
while(a!=0)
{
if(a%2!=0)
s+=pow(2,a%2*i);
a/=2;
i++;
}
i=0;
if(na==1) s*=-1;
if(b<=0) nb=1,b*=-1;
while(b!=0)
{
if(b%2!=0)
s1+=pow(2,b%2*i);
b/=2;
i++;
}
if(nb==1) s1*=-1;
cout<<s+s1;;
return 0;
} -
-12017-08-03 18:41:04@
#include<cstdio>
//调用头文件。
using namespace std;
int main()
{
int a,b;//定义a,b。
scanf("%d%d",&a,&b);//通过scanf格式化输入。
printf("%d",a+b);//直接输出表达式即可
return 0;
} -
-12017-07-24 19:22:06@
import java.io.*;
import java.util.Scanner;public class Main {
public static void main(String[] args) throws IOException {
Scanner cin = new Scanner(System.in);
int a = cin.nextInt();
int b = cin.nextInt();
System.out.println(a + b);
}
} -
-12017-07-22 20:54:52@
#inlcude<iostream>
using namespace std;
int main()
{
int A,B;
cin>>A>>B;
cout<<A+B<<endl;
return 0;
} -
-12017-05-14 11:15:00@
#include<stdio.h>
int main()
{
int a,b,c;
scanf("%d %d",&a,&b);
c=a+b;
printf("%d",c);
return 0;
} -
-12017-04-10 16:16:23@
include <iostream>
include <cstring>
using namespace std;
int low_bit (int a) {
return a & (-a);
}int main () {
int n = 2, m = 1;
int ans[m + 1];
int a[n + 1], c[n + 1], s[n + 1];
int o = 0;memset (c, 0, sizeof(c));
s[0] = 0;
for (int i = 1; i <= n; i++) {
cin >> a[i];
s[i] = s[i - 1] + a[i];
c[i] = s[i] - s[i - low_bit(i)];
}for (int i = 1; i <= m; i++) {
int q = 2;
{
int x = 1, y = 2;
int s1 = 0, s2 = 0, p = x - 1;while (p > 0) {
s1 += c[p];
p -= low_bit(p);
}p = y;
while (p > 0) {
s2 += c[p];
p -= low_bit(p);
}o++;
ans[o] = s2 - s1;
}
}for (int i = 1; i <= o; i++)
cout << ans[i] << endl;return 0;
} -
-12017-03-14 17:40:18@
var a,b:longint;
begin
readln(a,b);
writeln(a+b);
end. -
-12017-03-12 11:37:25@
#include<iostream> using namespace std; int Plus(int a, int b) { return a + b; } int main() { int a, b; cin >> a >> b; cout << Plus(a, b); return 0; }
-
-12017-03-11 17:26:33@
#include <iostream>
using namespace std;int main() {
int a,b;
cin>>a>>b;
cout<<a+b;
return 0;
} -
-12017-03-10 21:09:18@
#include <stdio.h>
#include <iostream>
using namespace std;
int main()
{
int a,b,c;
cin>>a;
cin>>b;
c=a+b;
cout<<c<<endl;
return 0;
} -
-12017-03-05 12:02:25@
main函数自递归和位运算
#include<bits/stdc++.h> int main(int a,int b,int k) { if (k) scanf("%d%d",&a,&b); printf("%d",b==0?a:main(a^b,(a&b)<<1,0)); exit(0); }
-
-12017-03-04 16:26:58@
#include<iostream> #include<iomanip> #include<cmath> #include<algorithm> using namespace std; int m,n; int main() { cin>>n>>m; cout<<n+m; return 0; }
-
-12017-02-20 19:47:50@
#include <stdio.h>
int main()
{
int x,y;
scanf("%d %d",&x,&y);
printf("%d",x+y);
return 0;
}
信息
- ID
- 1000
- 难度
- 9
- 分类
- (无)
- 标签
- (无)
- 递交数
- 73488
- 已通过
- 28184
- 通过率
- 38%
- 被复制
- 200