国产探花免费观看_亚洲丰满少妇自慰呻吟_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;}
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 井陉县| 新巴尔虎右旗| 青铜峡市| 常德市| 霍邱县| 科技| 龙川县| 萨嘎县| 雅安市| 长宁县| 扶绥县| 宜都市| 吉安市| 迁西县| 岫岩| 平远县| 卢湾区| 呼和浩特市| 醴陵市| 留坝县| 阳春市| 禄丰县| 天镇县| 弋阳县| 永平县| 云林县| 安丘市| 得荣县| 威宁| 阿城市| 新河县| 原平市| 昌吉市| 南投县| 长阳| 资兴市| 呼伦贝尔市| 乌拉特后旗| 子洲县| 太谷县| 宝应县|