国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

Codeforces Round #397 - Problem C - Table Tennis Game 2

2019-11-08 19:48:33
字體:
來源:轉載
供稿:網友

題目鏈接:http://codeforces.com/contest/765/PRoblem/C

題意:兩人打乒乓球,贏一球加1分,若其中一人分數達到上限則開始新的一局,給出每局分數上限k,兩人得分a,b,求最大局數,若情形不存在輸出-1。 關鍵:易漏判輸出-1的情況。

依題意,a=kn1+xb=kn2+y,其中n1,n2≥0,且n1+n2>0,0≤x,y≤k?1。 則在給定的k,a,b下,x越小,n1越大,n2同理。

猜想:若情況存在,則ans=a/k+b/k 證明:構造法,構造一個可行的解來證明

a:b可以拆成 ???????k:yk:0x:k0:k1個n1?1個1個n2?1個 即,當y≠0時,n1必須大于0,這樣才可以構成一個k:y。同理,當x≠0時,n2必須大于0。

#include <iostream>#include <cstdio>#include <algorithm>#include <cstring>#include <string>#include <cmath>#include <vector>#include <queue>#include <stack>#include <set>#include <map>using namespace std;#define FOR(i,k,n) for(int i=k;i<n;i++)#define FORR(i,k,n) for(int i=k;i<=n;i++)#define scan(a) scanf("%d",&a)#define scann(a,b) scanf("%d%d",&a,&b)#define scannn(a,b,c) scanf("%d%d%d",&a,&b,&c)#define mst(a,n) memset(a,n,sizeof(a))#define ll long long#define N 1005#define mod 1000000007#define INF 0x3f3f3f3fconst double eps=1e-8;const double pi=acos(-1.0);int main(){ //freopen("in.txt","r",stdin); //freopen("out.txt","w",stdout); ll k,a,b; cin>>k>>a>>b; ll ans1=a/k; ll ans2=b/k; int flag=0; if(b%k && ans1==0) flag=1; if(a%k && ans2==0) flag=1; if(flag) cout<<"-1"<<endl; else cout<<ans1+ans2<<endl; return 0;}
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 抚远县| 永靖县| 宁河县| 怀柔区| 长泰县| 龙川县| 安多县| 雷州市| 庆云县| 松江区| 石阡县| 娱乐| 万荣县| 荆门市| 华容县| 日土县| 定西市| 个旧市| 台山市| 新昌县| 辛集市| 嘉兴市| 于都县| 安新县| 郑州市| 龙里县| 宁国市| 南澳县| 安庆市| 确山县| 崇州市| 泽州县| 赤壁市| 滕州市| 涡阳县| 濉溪县| 仁寿县| 利川市| 明星| 偏关县| 浦县|