浮点数取模
2016-04-07 10:30
288 查看
题目链接:http://codeforces.com/contest/404/problem/B
也可以用浮点数取模函数fmod(a,b);
#include <cstdio> #include <cstring> #include <cstdlib> #include <set> #include <map> #include <vector> #include <queue> #include <algorithm> #include <iostream> using namespace std; double a, d; int n; int main() { cin >> a >> d >> n; int cnt = 0; double len = 0; for (int i = 1; i <= n; i++) { len += d; int temp = len / a; len = len - temp * a; cnt += temp; cnt %= 4; if (cnt == 0) { printf("%.10lf %.10lf\n", len, 0.0); } else if (cnt == 1) { printf("%.10lf %.10lf\n", a, len); } else if (cnt == 2) { printf("%.10lf %.10lf\n", a - len, a); } else { printf("%.10lf %.10lf\n", 0.0, a - len); } } return 0; }
也可以用浮点数取模函数fmod(a,b);
#include <cstdio> #include <cmath> using namespace std; int main() { double a,d,x,y,s=0.0; int n; scanf("%lf%lf%d",&a,&d,&n); for(int i=1; i<=n; i++) { s+=d; s=fmod(s,4*a); if(s <= a)x=s,y=0; else if(s <=2*a)x=a,y=s-a; else if(s <=3*a)x=a-(s-2*a),y=a; else x=0,y=a-(s-3*a); printf("%lf %lf\n",x,y); } return 0; }
相关文章推荐
- C++ 面试问题&资料整理
- minSdkVersion、targetSdkVersion、targetApiLevel的区别
- Office 365 ProPlus 安装及管理
- AutoCAD中ObjectARX C++常用的方法
- 【转】MyEclipse8.5集成Tomcat7时的启动错误:Exception in thread “main” java.lang.NoClassDefFoundError org/apache/commons/logging/LogFactory
- Cts框架解析(12)-ITargetPreparer
- 批量删除以前缀开头的数据表
- MySQL主要的命令(1)
- MSDE 2000
- Zabbix图像集中展示Graphtrees开源
- 建造者模式Builder Pattern
- codeforces_622E. Ants in Leaves(dfs+排序+贪心)
- 内存泄漏与内存溢出
- 分离与继承的思想实现图片上传后的预览功能:ImageUploadView
- 【JQuery UI】什么是JQuery UI
- 01-Memcached介绍
- linux 文件权限
- PHP如何在数组指定位置插入单元
- 使用DrawerLayout实现安卓侧拉菜单
- Hibernate查询一个对象