8.15 10:35
This commit is contained in:
parent
5b0f72e5b3
commit
752b3613ec
|
@ -0,0 +1,5 @@
|
||||||
|
[{000214A0-0000-0000-C000-000000000046}]
|
||||||
|
Prop3=19,11
|
||||||
|
[InternetShortcut]
|
||||||
|
URL=https://vjudge.net/contest/509214
|
||||||
|
IDList=
|
Binary file not shown.
|
@ -3,12 +3,14 @@
|
||||||
#include <algorithm>
|
#include <algorithm>
|
||||||
#include <cmath>
|
#include <cmath>
|
||||||
using namespace std;
|
using namespace std;
|
||||||
int n, m, k;
|
// #define int long long
|
||||||
int gcd(int a, int b)
|
// #define %d %ld
|
||||||
|
long long n, m, k;
|
||||||
|
long long gcd(long long a, long long b)
|
||||||
{
|
{
|
||||||
while (b != 0)
|
while (b != 0)
|
||||||
{
|
{
|
||||||
int tmp = a;
|
long long tmp = a;
|
||||||
a = b;
|
a = b;
|
||||||
b = tmp % b;
|
b = tmp % b;
|
||||||
}
|
}
|
||||||
|
@ -18,28 +20,28 @@ int main()
|
||||||
{
|
{
|
||||||
// freopen("bout.txt","w",stdout);
|
// freopen("bout.txt","w",stdout);
|
||||||
|
|
||||||
scanf("%d%d%d", &n, &m, &k);
|
scanf("%ld%ld%ld", &n, &m, &k);
|
||||||
printf("%d %d %d \n",n,m,k);
|
// printf("%ld %ld %ld \n",n,m,k);
|
||||||
int s = n * m / k * 2;
|
long long s = n * m / k * 2;
|
||||||
if (n * m * 2 % k != 0)
|
if ((n * m * 2 )% k != 0)//¶¼ÊÇint µÄ´í
|
||||||
{
|
{
|
||||||
printf("%d %d %d %d \n",n,m,k,n * m * 2 % k);
|
// printf("%ld %ld %ld %ld \n",n,m,k,n * m * 2 % k);
|
||||||
printf("\\NO");
|
printf("NO");
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
int n1 = gcd(k, n), m1 = gcd(k / n1, m);
|
long long n1 = gcd(k, n), m1 = gcd(k / n1, m);
|
||||||
int n2 = n / n1, m2 = m / m1;
|
long long n2 = n / n1, m2 = m / m1;
|
||||||
if (n2 * m2 / 2 * 2 == s) //*2因为开始时s*=2;
|
if (n2 * m2 / 2 * 2 == s) //*2因为开始时s*=2;
|
||||||
{
|
{
|
||||||
printf("YES\n0 0\n%d 0\n0 %d", n2, m2);
|
printf("YES\n0 0\n%ld 0\n0 %ld", n2, m2);
|
||||||
}
|
}
|
||||||
else if (n2 * 2 <= n)
|
else if (n2 * 2 <= n)
|
||||||
{
|
{
|
||||||
printf("YES\n0 0\n%d 0\n0 %d", n2 * 2, m2);
|
printf("YES\n0 0\n%ld 0\n0 %ld", n2 * 2, m2);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
printf("YES\n0 0\n%d 0\n0 %d", n2, m2 * 2);
|
printf("YES\n0 0\n%ld 0\n0 %ld", n2, m2 * 2);
|
||||||
}
|
}
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
|
@ -0,0 +1,2 @@
|
||||||
|
|
||||||
|
16904235 79092881 127345237
|
|
@ -0,0 +1,4 @@
|
||||||
|
[{000214A0-0000-0000-C000-000000000046}]
|
||||||
|
Prop3=19,11
|
||||||
|
[InternetShortcut]
|
||||||
|
URL=https://vjudge.net/contest/509525
|
Binary file not shown.
|
@ -0,0 +1,14 @@
|
||||||
|
# Problem A. Intervals
|
||||||
|
* https://vjudge.net/contest/509525#problem/A
|
||||||
|
### 题意
|
||||||
|
数轴上给定n个区间及区间至少要标记的点数(每个整数一个点),求至少要标记多少个点
|
||||||
|
### 做法
|
||||||
|
差分约束
|
||||||
|
### 关键词
|
||||||
|
差分约束、最短路、spfa
|
||||||
|
### 易错点
|
||||||
|
//n不是点数,maxn才是
|
||||||
|
//漏了最后一个点
|
||||||
|
in[u]=0;//spfa的精髓!! 出队与再入队
|
||||||
|
### 工具箱
|
||||||
|
* 差分约束、最短路(PPT)
|
|
@ -0,0 +1,12 @@
|
||||||
|
# 题目
|
||||||
|
* 链接
|
||||||
|
### 题意
|
||||||
|
|
||||||
|
### 做法
|
||||||
|
|
||||||
|
### 关键词
|
||||||
|
|
||||||
|
### 易错点
|
||||||
|
|
||||||
|
### 工具箱
|
||||||
|
*
|
|
@ -0,0 +1 @@
|
||||||
|
#
|
|
@ -0,0 +1,6 @@
|
||||||
|
#include <iostream>
|
||||||
|
using namespace std;
|
||||||
|
int main()
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
|
@ -0,0 +1,7 @@
|
||||||
|
## z:\Chao\src\Template\test\in.txt
|
||||||
|
2020/03/14 ÖÜÁù 11:41:28.68
|
||||||
|
Hello Easy C++ project!
|
||||||
|
|
||||||
|
-----------------------------------------------
|
||||||
|
Process exited after 200 ms with return value 0
|
||||||
|
|
|
@ -0,0 +1 @@
|
||||||
|
#
|
|
@ -0,0 +1,69 @@
|
||||||
|
#include <iostream>
|
||||||
|
#include <queue>
|
||||||
|
#include<cstdio>
|
||||||
|
#include <string.h>
|
||||||
|
using namespace std;
|
||||||
|
const int N=5e4+5,N3=N*4,inf=0x3f3f3f3f; //RE N3=N*4多add()了一轮!
|
||||||
|
int to[N3],ne[N3],w[N3],h[N],cnt=0,s=N-4,dist[N];
|
||||||
|
bool in[N];
|
||||||
|
queue<int>q;
|
||||||
|
void add(int u,int v,int w1)
|
||||||
|
{
|
||||||
|
to[++cnt]=v;
|
||||||
|
w[cnt]=w1;
|
||||||
|
ne[cnt]=h[u];
|
||||||
|
h[u]=cnt;
|
||||||
|
}
|
||||||
|
void spfa()
|
||||||
|
{
|
||||||
|
q.push(s);
|
||||||
|
while(!q.empty())
|
||||||
|
{
|
||||||
|
int u=q.front();
|
||||||
|
q.pop();
|
||||||
|
in[u]=0;//spfa的精髓!!
|
||||||
|
for(int i=h[u];i;i=ne[i])
|
||||||
|
{
|
||||||
|
int v=to[i],w1=w[i];
|
||||||
|
// printf("%d %d %d\n",u,v,w1);
|
||||||
|
if(dist[u]+w1<dist[v])
|
||||||
|
{
|
||||||
|
dist[v]=dist[u]+w1;
|
||||||
|
// printf("%d(%d) %d(%d) %d\n",u,dist[u],v,dist[v],w1);
|
||||||
|
if(!in[v])
|
||||||
|
{
|
||||||
|
q.push(v);
|
||||||
|
in[v]=1;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
int main()
|
||||||
|
{
|
||||||
|
int n,u,v,w1,maxn=0;
|
||||||
|
scanf("%d",&n);
|
||||||
|
memset(in,0,sizeof(bool)*(n+1));
|
||||||
|
for(int i=1;i<=n;i++)
|
||||||
|
{
|
||||||
|
scanf("%d%d%d",&u,&v,&w1);
|
||||||
|
add(v,u-1,w1*-1);
|
||||||
|
maxn=maxn>u? maxn:u;
|
||||||
|
maxn=maxn>v? maxn:v;
|
||||||
|
}
|
||||||
|
//n不是点数,maxn才是
|
||||||
|
for(int i=0;i<=maxn;i++)
|
||||||
|
{
|
||||||
|
dist[i]=inf;
|
||||||
|
}
|
||||||
|
for(int i=0;i<maxn;i++)
|
||||||
|
{
|
||||||
|
add(i,i+1,1);
|
||||||
|
add(i+1,i,0);
|
||||||
|
add(s,i,0);
|
||||||
|
}
|
||||||
|
add(s,maxn,0);//漏了
|
||||||
|
spfa();
|
||||||
|
printf("%d",dist[maxn]-dist[0]);
|
||||||
|
return 0;
|
||||||
|
}
|
|
@ -0,0 +1,7 @@
|
||||||
|
## z:\Chao\src\Template\test\in.txt
|
||||||
|
2020/03/14 ÖÜÁù 11:41:28.68
|
||||||
|
Hello Easy C++ project!
|
||||||
|
|
||||||
|
-----------------------------------------------
|
||||||
|
Process exited after 200 ms with return value 0
|
||||||
|
|
Binary file not shown.
|
@ -9,19 +9,4 @@
|
||||||
### 易错点
|
### 易错点
|
||||||
|
|
||||||
### 工具箱
|
### 工具箱
|
||||||
*
|
*
|
||||||
### ÌâÃæ
|
|
||||||
|
|
||||||
### Input
|
|
||||||
|
|
||||||
### Output
|
|
||||||
|
|
||||||
### Sample
|
|
||||||
#### input
|
|
||||||
|
|
||||||
#### output
|
|
||||||
|
|
||||||
### Hint
|
|
||||||
|
|
||||||
|
|
||||||
![](sketch.jpg)
|
|
Loading…
Reference in New Issue